Capture cross-project connections on the fly. Use when you notice a shared pattern, people-bridge, knowledge cascade, narrative amplifier, or flywheel loop linking two projects. Persists structured YAML to a bridges directory. Triggers on: bridge, connects to, feeds into, same pattern as, cross-project link, archetype detection, bidirectional, one-way, active, potential, theoretical.
66
81%
Does it follow best practices?
Run evals on this skill
Adds up to 20 points to the overall score
View guide
—
The risk profile of this skill
Capture cross-project bridges in the moment, while you're in context. Bridges are knowledge — they live in a bridges directory, not in project artifacts.
Bridges are discovered during work, not during planning. When you're deep in a meeting and realize "this pattern connects to another project" — that's when bridge captures it.
Read the project config file (path configured via $PRAXIS_DIR or equivalent). This file contains:
also_in cross-references (for people-bridge detection)Use project YAML keys as aliases (case-insensitive matching). If a user types a project name instead of alias, fuzzy-match against name fields.
If config missing → ⚠️ No project config found. Create it with your project definitions.
Every bridge has a type — one of 10 archetypes (flywheel, knowledge, people, terrain, narrative, identity, complexity, local, option, mirror). Full descriptions and the keyword/context heuristics used to auto-detect them live in references/archetype-detection.md — load it before auto-detecting an archetype from a description, or when a user asks what an archetype code means.
| Command | Action |
|---|---|
/bridge <src> → <tgt>: <desc> | Capture a bridge (auto-detect archetype) |
/bridge <src> → <tgt> [type]: <desc> | Capture with explicit archetype |
/bridge list | Show recent bridges (last 10) |
/bridge list <project> | Show bridges involving a project |
/bridge map | Generate mermaid bridge map from all captures |
/bridge stats | Weekly summary — counts by project and archetype |
Directory: Bridges directory (e.g., thinking/bridges/ under your configured workspace root)
Each bridge is a YAML file: {date}-{seq}-{source}-to-{target}.yaml
Example: 2026-04-08-1-hp-to-brand.yaml
Sequence: Within a day, increment seq (1, 2, 3...). Check existing files for the day to determine next seq.
source: HP
target: BR
archetype: narrative
emoji: 📖
description: "Philosopher council on construct AI → reframes human-centric positioning from marketing to philosophy"
direction: one-way # one-way | bidirectional
strength: potential # active | potential | theoretical
context: "During introspect session, realized philosopher encounters are unique differentiator"
date: 2026-04-08Fields:
source, target: Project alias (uppercase, from config keys)archetype: One of the 10 codesemoji: Archetype emojidescription: The bridge itself — what flows from source to targetdirection: one-way (A→B only) or bidirectional (A↔B, create one file with note)strength: active (happening now), potential (could happen, not activated), theoretical (speculative)context: Optional — what triggered the discovery (session, meeting, realization)date: ISO date/bridge <args>)Input: /bridge HP → BR: philosopher encounters reframe human-centric positioning
→ to get source and rest: to get target (+ optional [type]) and descriptionname fields.[type] present, use it; otherwise auto-detect archetypeIf no explicit type, apply the keyword and config-context signals in references/archetype-detection.md. If ambiguous after both signals, default to knowledge and say so in the response — NEVER silently guess a rarer archetype on weak signal.
one-way, potentialbidirectionalactivepotentialtheoretical⚠️ Workspace root not set. Configure via environment variable (e.g. export PRAXIS_DIR="$HOME/dev/praxis"){date}-* files + 1🔗 Bridge #N: {emoji} {source} → {target} ({archetype}) — {short desc}📊 {N} bridges this week involving {pair}. Consider updating strategic bridges during review./bridge list [project])Glob for all YAML files in bridges directory🔗 Bridges (last 10)
1. 2026-04-08 📖 HP → BR: philosopher encounters reframe positioning (potential)
2. 2026-04-08 🧠 BNP → HP: observability patterns = atelier content (active)
3. 2026-04-07 👤 HP ↔ SL: Matthieu carries context both ways (active)If empty: 🔗 No bridges captured yet. Use /bridge <source> → <target>: <description>
/bridge map)graph LR
classDef active fill:#90EE90,stroke:#333,color:#000
classDef potential fill:#FFE4B5,stroke:#333,color:#000
classDef theoretical fill:#FFB6C1,stroke:#333,color:#000
HP["Homo Promptus"] -->|"📖 narrative"| BR["Personal Brand"]:::active
DS["Digital Stoic"] -->|"🧠 patterns"| HP:::potential
HP <-->|"👤 Matthieu"| SL["Slasheo"]:::active/bridge stats)📊 Bridge Stats
This week: 5 bridges
All time: 23 bridges
By project (top 5):
HP: 12 (6→, 6←) [tier 1]
BR: 8 (2→, 6←) [tier 1]
DS: 7 (5→, 2←) [tier 1]
By archetype:
🧠 knowledge: 8
📖 narrative: 6
👤 people: 4
By strength:
🟢 active: 9
🟡 potential: 11
🔴 theoretical: 3
Tier 2 bridges: 3 (VN→HP, VN→BR, LW→HP)/bridge invocation./bridge list before writing a duplicate.NEVER reformulate the user's description — store the exact wording as given. Why: paraphrasing introduces your interpretation and erases the original mental model that triggered the insight.
NEVER add unsolicited commentary on bridge content — the response is one line only. Why: this skill is a capture tool, not an analysis tool; commentary derails the primary conversation.
NEVER write to GTD task files or project artifacts — only write to the bridges directory. Why: mixing bridge captures into task lists pollutes both systems and breaks single-responsibility.
NEVER guess a project alias that is not in config — warn and prompt the user to add it. Why: silent alias invention creates inconsistent data that breaks /bridge list, /bridge map, and stats aggregation.
NEVER skip the seq check — always count existing files for the day before assigning a sequence number. Why: collisions overwrite existing bridge captures with no warning.
NEVER default direction/strength without checking for their explicit signals — skipping the detection step and hardcoding one-way + potential regardless of what the description says throws away information the user gave you.
BAD:
# User wrote "Matthieu carries context both ways" but skill wrote:
direction: one-way
strength: potentialGOOD:
# Detected "both ways" -> bidirectional; "carries context" is present-tense -> active
direction: bidirectional
strength: activeWhy: a bridge with the wrong direction or strength misrepresents the actual relationship, and /bridge stats and /bridge map silently propagate the error into aggregate counts.
Capturing a knowledge bridge mid-session:
# User is in a meeting and realises a framework from one project applies to another
/bridge PROJ-A → PROJ-B: observability patterns from service mesh apply directly to the atelier content structure
# Skill writes: 2026-04-11-1-proj-a-to-proj-b.yaml (archetype: knowledge, strength: potential)
# Response: 🔗 Bridge #1: 🧠 PROJ-A → PROJ-B (knowledge) — observability patterns from service mesh apply directly to the atelier content structureCapturing a people-bridge with bidirectional flow:
# A stakeholder carries context in both directions between two projects
/bridge PROJ-A ↔ PROJ-C [people]: Matthieu carries positioning context both ways and cross-pollinates priorities
# Skill detects '↔' → direction: bidirectional; 'Matthieu' in stakeholders → archetype: people
# Response: 🔗 Bridge #2: 👤 PROJ-A ↔ PROJ-C (people) — Matthieu carries positioning context both waysListing recent bridges and generating a visual map:
/bridge list PROJ-A
# Returns last 10 bridges involving PROJ-A, sorted by date desc
/bridge map
# Returns a mermaid graph block with all captured bridges coloured by strength| Topic | Reference | When to Use |
|---|---|---|
| Full archetype table and keyword/context auto-detection heuristics | Archetype Detection | Auto-detecting an archetype from a description, or explaining what an archetype code means |
| PKM linking conventions this skill's cross-project model draws on | Linking Your Thinking | Background reading on why bridges are captured as atomic links, not folded into project notes |
YAML block scalar syntax for multi-line description/context fields | YAML Spec — Block Scalars | Writing a bridge YAML file with a multi-line context field |
a1083f4
Also appears in
last in sync Aug 28, 2026
If you maintain this skill, you can claim it as your own. Once claimed, you can manage eval scenarios, bundle related skills, attach documentation or rules, and ensure cross-agent compatibility.