wayfind 2.0.70 → 2.0.71

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -1,68 +1,55 @@
1
1
  # Wayfind
2
2
 
3
- **Team decision trail for AI-assisted development.**
3
+ **Team memory for AI-assisted engineering.**
4
4
 
5
- > AI makes individual engineers faster. Nobody has solved coherent, maintainable software built by a *team* over time. Every handoff loses context. Wayfind captures it.
5
+ Your AI coding assistant forgets everything between sessions. Wayfind gives it a memory for you and your whole team.
6
+
7
+ Plain markdown files. No infrastructure. Works with any MCP client.
6
8
 
7
9
  [![CI](https://github.com/usewayfind/wayfind/actions/workflows/ci.yml/badge.svg)](https://github.com/usewayfind/wayfind/actions/workflows/ci.yml)
8
- [![License: Apache 2.0](https://img.shields.io/badge/License-Apache%202.0-blue.svg)](LICENSE)
9
10
  [![npm](https://img.shields.io/npm/v/wayfind)](https://www.npmjs.com/package/wayfind)
11
+ [![License: Apache 2.0](https://img.shields.io/badge/License-Apache%202.0-blue.svg)](LICENSE)
10
12
 
11
- ---
12
-
13
- ## Install
14
-
15
- ### Claude Code plugin (recommended)
13
+ **Works with:** Claude Code | Cursor | Any MCP client
16
14
 
17
- In a Claude Code session:
15
+ ---
18
16
 
19
- ```
20
- /plugin marketplace add usewayfind/wayfind
21
- /plugin install wayfind@usewayfind
22
- ```
17
+ ## The Problem
23
18
 
24
- Then initialize a repo:
19
+ AI coding assistants are stateless. Every session starts cold. The decisions you made yesterday, the architecture you agreed on last week, the reason you chose Postgres over Mongo — gone. You re-explain, or the AI guesses wrong.
25
20
 
26
- ```
27
- /wayfind:init-memory
28
- ```
21
+ Now multiply that across a team. Five engineers, each with their own AI sessions, none of them aware of what the others decided. Your PM reads the standup notes, but the AI that writes the code doesn't.
29
22
 
30
- Your AI sessions now resume where you left off instead of cold-starting.
23
+ ## What Wayfind Does
31
24
 
32
- ### npm CLI
25
+ **For you:** Sessions resume where they left off. Decisions are extracted automatically and become searchable history. Drift detection flags when work veers from the stated goal.
33
26
 
34
- The plugin includes the CLI, but you can also install it standalone:
27
+ **For your team:** A daily digest summarizes what everyone shipped, decided, and discovered tailored per role (engineering, product, design, strategy). Team members who use AI tools get session memory directly. Everyone else gets a Slack digest.
35
28
 
36
- ```bash
37
- npm install -g wayfind
38
- wayfind init
39
- ```
29
+ **For your AI tools:** An MCP server exposes your team's full decision history as tools. Claude, Cursor, or any MCP client can search decisions, browse by date, and retrieve context — no file reading or guessing.
40
30
 
41
- The CLI is required for digest generation, Slack bot, signal connectors, and team management. The plugin handles session hooks and slash commands.
31
+ <!-- TODO: demo GIF here see #175 -->
42
32
 
43
33
  ---
44
34
 
45
- ## What It Does
35
+ ## Quick Start
46
36
 
47
- ### For You (solo engineer)
37
+ ### Option A: Claude Code plugin
48
38
 
49
- - **Persistent memory** — sessions pick up where the last one ended
50
- - **Automatic journal** — decisions and rationale extracted from every session
51
- - **Searchable history** — `wayfind search-journals "auth refactor"`
52
- - **Drift detection** — AI flags when work drifts from the stated goal
53
-
54
- ### For Your Team
55
-
56
- - **Digests** — weekly summaries tailored per role (engineering, product, design, strategy)
57
- - **Slack bot** — anyone on the team asks `@wayfind` and gets answers from the decision trail
58
- - **Signal connectors** — pull context from GitHub, Intercom, and Notion into digests
59
- - **Context shift detection** — surfaces significant pivots and architecture changes
39
+ ```
40
+ /plugin marketplace add usewayfind/wayfind
41
+ /plugin install wayfind@usewayfind
42
+ /wayfind:init-memory
43
+ ```
60
44
 
61
- Only the engineer installs anything. Everyone else sees a Slack digest.
45
+ ### Option B: npm (works with any AI tool)
62
46
 
47
+ ```bash
48
+ npm install -g wayfind
49
+ wayfind init
63
50
  ```
64
- /wayfind:init-team # Set up team context, journals, and digests
65
- ```
51
+
52
+ Your next AI session has memory. That's it.
66
53
 
67
54
  ---
68
55
 
@@ -85,118 +72,72 @@ All context is plain markdown in directories you control:
85
72
 
86
73
  No proprietary formats. No vendor lock-in. `grep` works if Wayfind breaks.
87
74
 
88
- ### The Session Protocol
89
-
90
- **Start:** AI reads state files, summarizes context, asks "What's the goal?"
91
-
92
- **Mid-session:** If work drifts from the goal, the AI flags it.
75
+ ### The Session Loop
93
76
 
94
- **End:** Decisions are extracted, written as journal entries, and synced to the team repo — automatically via hooks.
77
+ 1. **Start** AI reads state files, summarizes context, asks "What's the goal?"
78
+ 2. **Mid-session** — If work drifts from the goal, the AI flags it.
79
+ 3. **End** — Decisions are extracted, written as journal entries, and synced to the team repo — automatically via hooks.
95
80
 
96
- ### Digests
81
+ ### Team Digests
97
82
 
98
- Each role sees the same underlying data through a different lens:
83
+ Each role sees the same data through a different lens:
99
84
 
100
- - **Engineering**: What shipped, what drifted, patterns
85
+ - **Engineering**: What shipped, what drifted, what patterns emerged
101
86
  - **Product**: What shipped vs. planned, discovery signals
102
- - **Design**: UX decisions, implementation gaps vs. design intent
103
87
  - **Strategy**: Cross-team patterns, drift trends, capability gaps
104
88
 
105
- ### Signal Connectors
89
+ The digest posts to Slack. Anyone on the team — engineer, PM, CEO — who uses an AI tool gets session memory. Everyone else gets the digest.
106
90
 
107
- ```bash
108
- wayfind pull github # Issues, PRs, Actions status
109
- wayfind pull intercom # Support conversations, tags, response times
110
- wayfind pull notion # Pages, databases, comments
111
- wayfind pull --all # All configured channels
112
- ```
91
+ ### MCP Server
113
92
 
114
- ---
93
+ Wayfind includes an MCP server that exposes team context to any MCP-compatible AI tool. Auto-registered during `wayfind init`.
115
94
 
116
- ## Commands
117
-
118
- ### Plugin skills (in Claude Code)
119
-
120
- | Skill | Description |
121
- |-------|-------------|
122
- | `/wayfind:init-memory` | Initialize context for the current repo |
123
- | `/wayfind:init-team` | Set up team context, journals, and digests |
124
- | `/wayfind:doctor` | Check installation health |
125
- | `/wayfind:standup` | Daily standup summary |
126
- | `/wayfind:journal` | Weekly journal digest and drift detection |
127
- | `/wayfind:review-prs` | Review overnight PRs |
128
-
129
- ### CLI commands
130
-
131
- | Command | Description |
132
- |---------|-------------|
133
- | `wayfind init` | Install for your AI tool |
134
- | `wayfind doctor` | Check installation health |
135
- | `wayfind update` | Update hooks and commands |
136
- | `wayfind status` | Cross-project status |
137
- | `wayfind team create` | Create a new team |
138
- | `wayfind team join` | Join an existing team |
139
- | `wayfind digest` | Generate persona-specific digests |
140
- | `wayfind digest --deliver` | Generate and post to Slack |
141
- | `wayfind bot` | Start the Slack bot |
142
- | `wayfind reindex` | Index journals + conversations |
143
- | `wayfind search-journals <q>` | Search decision history |
144
- | `wayfind pull <channel>` | Pull signals from a source |
145
- | `wayfind journal sync` | Sync journals to team repo |
146
- | `wayfind onboard <repo>` | Generate onboarding context pack |
147
- | `wayfind deploy init` | Scaffold Docker deployment |
148
- | `wayfind deploy --team <id>` | Scaffold per-team Docker deployment |
149
- | `wayfind deploy set-endpoint <url>` | Set container endpoint for team search |
150
- | `wayfind deploy list` | List running team containers |
151
- | `wayfind deploy status` | Check container health |
152
- | `wayfind migrate-to-plugin` | Remove old hooks (after plugin install) |
153
-
154
- Run `wayfind help` for the full list.
95
+ **Tools:**
155
96
 
156
- ---
97
+ | Tool | What it does |
98
+ |------|-------------|
99
+ | `search_context` | Search decisions by query, date range, author, or repo. Semantic or browse mode. |
100
+ | `get_entry` | Retrieve the full content of a specific entry. |
101
+ | `get_signals` | Recent GitHub, Intercom, and Notion activity. |
102
+ | `get_team_status` | Current team state: who's working on what, active projects, blockers. |
103
+ | `add_context` | Capture a decision or blocker from the current session. |
104
+ | `record_feedback` | Rate whether a result was useful (improves future retrieval). |
157
105
 
158
- ## MCP Server
106
+ Each team member's MCP server searches their local content store — journals synced from the shared team repo, with local embeddings generated automatically. No infrastructure required.
159
107
 
160
- Wayfind includes an MCP server (`wayfind-mcp`) that exposes team context to any MCP-compatible AI tool.
108
+ ---
161
109
 
162
- **Tools:** `search_context`, `get_entry`, `list_recent`, `get_signals`, `get_team_status`, `get_personas`, `record_feedback`, `add_context`
110
+ ## Signal Connectors
163
111
 
164
- Auto-registered during `wayfind init`. When a team container is running, the local MCP server proxies semantic search to it automatically — no config needed beyond the team-context repo.
112
+ Pull external context into digests:
165
113
 
166
- ---
167
-
168
- ## Environment Variables
114
+ ```bash
115
+ wayfind pull github # Issues, PRs, Actions status
116
+ wayfind pull intercom # Support conversations, tags, response times
117
+ wayfind pull notion # Pages, databases, comments
118
+ wayfind pull --all # All configured channels
119
+ ```
169
120
 
170
- ### For digests and bot
121
+ ---
171
122
 
172
- | Variable | Description |
173
- |----------|-------------|
174
- | `ANTHROPIC_API_KEY` | Digest generation and bot answers |
175
- | `SLACK_BOT_TOKEN` | Slack bot token (`xoxb-...`) |
176
- | `SLACK_APP_TOKEN` | Slack app-level token (`xapp-...`) |
177
- | `GITHUB_TOKEN` | Signal data and journal sync |
123
+ ## Team Setup
178
124
 
179
- ### Optional
125
+ ```
126
+ /wayfind:init-team
127
+ ```
180
128
 
181
- | Variable | Description |
182
- |----------|-------------|
183
- | `OPENAI_API_KEY` | Upgrade semantic search to OpenAI embeddings (Xenova local model is used by default — no key needed) |
184
- | `TEAM_CONTEXT_LLM_MODEL` | LLM for digests (default: `claude-sonnet-4-5-20250929`) |
185
- | `TEAM_CONTEXT_DIGEST_SCHEDULE` | Cron schedule (default: `0 8 * * 1` — Monday 8am) |
186
- | `TEAM_CONTEXT_EXCLUDE_REPOS` | Repos to exclude from digests |
187
- | `TEAM_CONTEXT_TELEMETRY` | `true` for anonymous usage telemetry |
129
+ This walks you through creating a team, setting up profiles, creating a shared team-context repo, and configuring Slack digest delivery. Multi-team support built in — bind repos to different teams, each with isolated context.
188
130
 
189
131
  ---
190
132
 
191
133
  ## Tool Support
192
134
 
193
- | Tool | Status | Setup |
194
- |------|--------|-------|
195
- | Claude Code | Full support (plugin) | `/plugin marketplace add usewayfind/wayfind` |
196
- | Claude Code | Full support (npm) | `wayfind init` |
197
- | Cursor | Session protocol | `wayfind init-cursor` |
198
- | Generic | Manual | See `specializations/generic/` |
199
- | Any MCP client | Full support (MCP) | `wayfind init` auto-registers |
135
+ | Tool | How | Setup |
136
+ |------|-----|-------|
137
+ | **Claude Code** | Plugin (full support) | `/plugin marketplace add usewayfind/wayfind` |
138
+ | **Cursor** | MCP server | `wayfind init` auto-registers |
139
+ | **Any MCP client** | MCP server | `wayfind init` auto-registers |
140
+ | **Slack** | Bot + digests | `wayfind bot --configure` |
200
141
 
201
142
  ---
202
143
 
@@ -206,27 +147,23 @@ Everything that runs on your machine is open source (Apache 2.0).
206
147
 
207
148
  | Open Source (this repo) | Commercial (future) |
208
149
  |---|---|
209
- | CLI and all commands | Cloud-hosted team aggregation |
150
+ | CLI, plugin, and all commands | Cloud-hosted team aggregation |
210
151
  | Session protocol and journal extraction | Managed digest delivery |
211
- | Content store and search | Web dashboard |
152
+ | Content store, semantic search, MCP server | Web dashboard |
212
153
  | Signal connectors (GitHub, Intercom, Notion) | SSO and tenant isolation |
213
154
  | Digest generation (your API key) | |
214
155
  | Slack bot (self-hosted) | |
215
156
  | Multi-team support | |
216
- | MCP server (local + container proxy) | |
217
- | Per-team content store isolation | |
218
-
219
- See [LICENSING.md](LICENSING.md) for details.
220
157
 
221
158
  ---
222
159
 
223
160
  ## Architecture
224
161
 
225
162
  - [Data Flow](docs/architecture/data-flow.md) — sessions to digests
226
- - [Principles](docs/architecture/architecture-principles.md) — the eight constraints
163
+ - [Query Path](docs/architecture/query-path.md) — how queries reach the content store
227
164
  - [Content Store](docs/architecture/content-store.md) — indexing, search, schema
165
+ - [Principles](docs/architecture/architecture-principles.md) — the eight constraints
228
166
  - [Signal Channels](docs/architecture/architecture-signal-channels.md) — connector architecture
229
- - [Signal Roadmap](docs/architecture/signal-source-roadmap.md) — planned connectors
230
167
 
231
168
  ---
232
169
 
@@ -242,4 +179,4 @@ See [CONTRIBUTING.md](CONTRIBUTING.md). Good first contributions:
242
179
 
243
180
  ## License
244
181
 
245
- Apache 2.0. See [LICENSE](LICENSE) and [LICENSING.md](LICENSING.md).
182
+ Apache 2.0. See [LICENSE](LICENSE).
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "wayfind",
3
- "version": "2.0.70",
3
+ "version": "2.0.71",
4
4
  "description": "Team decision trail for AI-assisted development. The connective tissue between product, engineering, and strategy.",
5
5
  "bin": {
6
6
  "wayfind": "./bin/team-context.js",
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "wayfind",
3
- "version": "2.0.70",
3
+ "version": "2.0.71",
4
4
  "description": "Team decision trail for AI-assisted development. Session memory, decision journals, and team digests.",
5
5
  "author": {
6
6
  "name": "Wayfind",
package/setup.sh CHANGED
@@ -215,7 +215,6 @@ if [ ! -f "$GLOBAL_STATE" ]; then
215
215
  run cp "$SCRIPT_DIR/templates/global.md" "$GLOBAL_STATE"
216
216
  fi
217
217
  log "Created $GLOBAL_STATE"
218
- warn "Edit $GLOBAL_STATE to add your name, preferences, and projects"
219
218
  else
220
219
  info "Already exists: $GLOBAL_STATE — skipped"
221
220
  fi
@@ -656,40 +655,23 @@ Do not ask more than once per decision. Do not ask during routine implementation
656
655
  fi
657
656
  fi
658
657
 
659
- # ── Step 7: Personas (informational) ─────────────────────────────────────────
660
-
661
- header "Personas"
662
-
663
- echo ""
664
- echo " Default personas: Product, Design, Engineering, Strategy"
665
- echo " You can customize personas later with 'wayfind personas'"
666
- echo ""
667
-
668
- # ── Step 8: Summary ───────────────────────────────────────────────────────────
669
-
670
- header "Done"
658
+ # ── Summary ──────────────────────────────────────────────────────────────────
671
659
 
672
660
  echo ""
673
- echo "Wayfind installed for $TOOL."
661
+ echo -e "${GREEN}✓${RESET} Wayfind installed."
674
662
  echo ""
675
- echo "Next steps:"
676
- echo " 1. Edit $GLOBAL_STATE with your preferences and projects"
677
663
 
678
664
  if [ "$TOOL" = "claude-code" ]; then
679
- echo " 2. Open a repo and run /init-memory to set it up"
680
- echo " 3. Start a Claude Code session — it will load your state automatically"
681
- echo " 4. Run /journal for a weekly digest of your AI session logs"
682
- echo " 5. Set up your profile: wayfind whoami --setup"
683
- echo " 6. Create or join a team: wayfind team create"
665
+ echo " Next: open a repo and run /init-memory to set it up."
666
+ echo " Then start a Claude Code session — Wayfind captures context automatically."
684
667
  elif [ "$TOOL" = "cursor" ]; then
685
- echo " 2. Open a repo and run: bash setup.sh --tool cursor --repo <path>"
686
- echo " 3. Start a Cursor session — the global rule loads your state automatically"
687
- echo " 4. See specializations/cursor/README.md for full documentation"
668
+ echo " Next: open a repo and run: bash setup.sh --tool cursor --repo <path>"
669
+ echo " Then start a Cursor session — the global rule loads your state automatically."
688
670
  else
689
- echo " 2. Add the session protocol to your tool's system prompt"
690
- echo " See: specializations/generic/README.md"
671
+ echo " Next: add the session protocol to your tool's system prompt."
672
+ echo " See: specializations/generic/README.md"
691
673
  fi
692
674
 
693
675
  echo ""
694
- echo " Full documentation: README.md"
676
+ echo " Docs: https://github.com/usewayfind/wayfind"
695
677
  echo ""