@decibelsystems/tools 2.0.2 → 2.1.1

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.
Files changed (96) hide show
  1. package/README.md +115 -233
  2. package/dist/config/queueableActions.d.ts +11 -0
  3. package/dist/config/queueableActions.d.ts.map +1 -0
  4. package/dist/config/queueableActions.js +22 -0
  5. package/dist/config/queueableActions.js.map +1 -0
  6. package/dist/daemon.d.ts +29 -0
  7. package/dist/daemon.d.ts.map +1 -1
  8. package/dist/daemon.js +64 -0
  9. package/dist/daemon.js.map +1 -1
  10. package/dist/daemonConfig.d.ts +7 -0
  11. package/dist/daemonConfig.d.ts.map +1 -1
  12. package/dist/daemonConfig.js +9 -0
  13. package/dist/daemonConfig.js.map +1 -1
  14. package/dist/facades/definitions.d.ts.map +1 -1
  15. package/dist/facades/definitions.js +130 -33
  16. package/dist/facades/definitions.js.map +1 -1
  17. package/dist/httpQueueDetection.d.ts +16 -0
  18. package/dist/httpQueueDetection.d.ts.map +1 -0
  19. package/dist/httpQueueDetection.js +36 -0
  20. package/dist/httpQueueDetection.js.map +1 -0
  21. package/dist/httpServer.d.ts +4 -0
  22. package/dist/httpServer.d.ts.map +1 -1
  23. package/dist/httpServer.js +224 -97
  24. package/dist/httpServer.js.map +1 -1
  25. package/dist/kernel.d.ts +2 -0
  26. package/dist/kernel.d.ts.map +1 -1
  27. package/dist/kernel.js +1 -0
  28. package/dist/kernel.js.map +1 -1
  29. package/dist/server.js +30 -1
  30. package/dist/server.js.map +1 -1
  31. package/dist/tools/agentic/agentQueue.d.ts +50 -0
  32. package/dist/tools/agentic/agentQueue.d.ts.map +1 -0
  33. package/dist/tools/agentic/agentQueue.js +226 -0
  34. package/dist/tools/agentic/agentQueue.js.map +1 -0
  35. package/dist/tools/agentic/index.d.ts +2 -0
  36. package/dist/tools/agentic/index.d.ts.map +1 -1
  37. package/dist/tools/agentic/index.js +84 -0
  38. package/dist/tools/agentic/index.js.map +1 -1
  39. package/dist/tools/coordinator/coordinator.d.ts +14 -0
  40. package/dist/tools/coordinator/coordinator.d.ts.map +1 -1
  41. package/dist/tools/coordinator/coordinator.js +101 -0
  42. package/dist/tools/coordinator/coordinator.js.map +1 -1
  43. package/dist/tools/coordinator/index.d.ts +2 -0
  44. package/dist/tools/coordinator/index.d.ts.map +1 -1
  45. package/dist/tools/coordinator/index.js +2 -0
  46. package/dist/tools/coordinator/index.js.map +1 -1
  47. package/dist/tools/decibel/index.d.ts +3 -0
  48. package/dist/tools/decibel/index.d.ts.map +1 -0
  49. package/dist/tools/decibel/index.js +150 -0
  50. package/dist/tools/decibel/index.js.map +1 -0
  51. package/dist/tools/decibel.d.ts +13 -0
  52. package/dist/tools/decibel.d.ts.map +1 -0
  53. package/dist/tools/decibel.js +156 -0
  54. package/dist/tools/decibel.js.map +1 -0
  55. package/dist/tools/deck.d.ts +4 -4
  56. package/dist/tools/deck.d.ts.map +1 -1
  57. package/dist/tools/deck.js +1546 -78
  58. package/dist/tools/deck.js.map +1 -1
  59. package/dist/tools/designer/index.d.ts +6 -0
  60. package/dist/tools/designer/index.d.ts.map +1 -1
  61. package/dist/tools/designer/index.js +344 -1
  62. package/dist/tools/designer/index.js.map +1 -1
  63. package/dist/tools/designer.d.ts +143 -0
  64. package/dist/tools/designer.d.ts.map +1 -1
  65. package/dist/tools/designer.js +457 -0
  66. package/dist/tools/designer.js.map +1 -1
  67. package/dist/tools/guardian/index.d.ts +1 -0
  68. package/dist/tools/guardian/index.d.ts.map +1 -1
  69. package/dist/tools/guardian/index.js +40 -1
  70. package/dist/tools/guardian/index.js.map +1 -1
  71. package/dist/tools/guardian.d.ts +30 -0
  72. package/dist/tools/guardian.d.ts.map +1 -1
  73. package/dist/tools/guardian.js +96 -0
  74. package/dist/tools/guardian.js.map +1 -1
  75. package/dist/tools/index.d.ts.map +1 -1
  76. package/dist/tools/index.js +7 -1
  77. package/dist/tools/index.js.map +1 -1
  78. package/dist/tools/mother.d.ts +11 -0
  79. package/dist/tools/mother.d.ts.map +1 -0
  80. package/dist/tools/mother.js +503 -0
  81. package/dist/tools/mother.js.map +1 -0
  82. package/dist/tools/swarm.d.ts +11 -0
  83. package/dist/tools/swarm.d.ts.map +1 -0
  84. package/dist/tools/swarm.js +701 -0
  85. package/dist/tools/swarm.js.map +1 -0
  86. package/dist/tools/terminal.d.ts +17 -0
  87. package/dist/tools/terminal.d.ts.map +1 -0
  88. package/dist/tools/terminal.js +968 -0
  89. package/dist/tools/terminal.js.map +1 -0
  90. package/dist/transports/http.d.ts.map +1 -1
  91. package/dist/transports/http.js +2 -0
  92. package/dist/transports/http.js.map +1 -1
  93. package/dist/transports/types.d.ts +4 -0
  94. package/dist/transports/types.d.ts.map +1 -1
  95. package/package.json +1 -1
  96. package/templates/docs.html +1084 -0
package/README.md CHANGED
@@ -1,8 +1,8 @@
1
1
  # @decibelsystems/tools
2
2
 
3
- MCP server for project intelligence. 26 facade tools (170+ internal handlers) across 20 domains: work tracking, architecture, experiments, design, git forensics, agent coordination, and more.
3
+ MCP server for project intelligence. 27 facade tools (170+ internal handlers) across work tracking, architecture, experiments, design, git forensics, agent coordination, and more.
4
4
 
5
- Tested with Claude Desktop, Claude Code, and Cursor. [Learn more →](https://decibel.systems/tools)
5
+ Tested with Claude Desktop, Claude Code, and Cursor. [Learn more](https://decibel.systems/tools)
6
6
 
7
7
  <a href="https://github.com/decibelsystems/decibel-tools-mcp#cursor">
8
8
  <img src="https://cursor.com/deeplink/mcp-install-dark.svg" alt="Add to Cursor" height="32" />
@@ -10,23 +10,6 @@ Tested with Claude Desktop, Claude Code, and Cursor. [Learn more →](https://de
10
10
 
11
11
  > **Note:** The one-click Cursor install only works on GitHub. [Click here](https://github.com/decibelsystems/decibel-tools-mcp#cursor) or see manual setup below.
12
12
 
13
- ## What It Does
14
-
15
- | Domain | Purpose | Example Tools |
16
- |--------|---------|---------------|
17
- | **Sentinel** | Work tracking | `sentinel_create_issue`, `sentinel_log_epic`, `sentinel_list_epics` |
18
- | **Dojo** | AI incubator | `dojo_add_wish`, `dojo_create_proposal`, `dojo_run_experiment` |
19
- | **Architect** | Decisions | `architect_createAdr`, `architect_createPolicy` |
20
- | **Roadmap** | Strategy | `roadmap_get`, `roadmap_getHealth`, `roadmap_linkEpic` |
21
- | **Oracle** | Recommendations | `oracle_next_actions`, `oracle_roadmap` |
22
- | **Designer** | Design decisions | `designer_record_design_decision`, `designer_crit` |
23
- | **Friction** | Pain points | `friction_log`, `friction_bump`, `friction_resolve` |
24
- | **Learnings** | Knowledge base | `learnings_append`, `learnings_list` |
25
- | **Context** | AI memory | `decibel_context_pin`, `decibel_context_refresh` |
26
- | **Registry** | Project management | `project_init`, `registry_list`, `registry_add` |
27
- | **Agentic** | Config compilation | `agentic_compile_pack`, `agentic_render` |
28
- | **Provenance** | Audit trail | `provenance_list` |
29
-
30
13
  ## Quick Start
31
14
 
32
15
  ```bash
@@ -37,11 +20,23 @@ npm install -g @decibelsystems/tools
37
20
  npx @decibelsystems/tools
38
21
  ```
39
22
 
23
+ ### Project Setup
24
+
25
+ After installing, initialize your first project:
26
+
27
+ ```bash
28
+ # Copy the example registry (one-time setup)
29
+ cp projects.example.json projects.json
30
+ # Edit projects.json with your project paths
31
+ ```
32
+
33
+ Or use the MCP tools directly — call `project_init` with your project path and it will create the `.decibel/` folder and register the project automatically.
34
+
40
35
  ## Platform Setup
41
36
 
42
- ### Cursor
37
+ ### Claude Code
43
38
 
44
- Add to `~/.cursor/mcp.json`:
39
+ Add to `.mcp.json` in your project root or `~/.claude/settings.json`:
45
40
 
46
41
  ```json
47
42
  {
@@ -54,9 +49,9 @@ Add to `~/.cursor/mcp.json`:
54
49
  }
55
50
  ```
56
51
 
57
- ### Claude Code
52
+ ### Cursor
58
53
 
59
- Add to `.mcp.json` in your project root or `~/.claude/settings.json`:
54
+ Add to `~/.cursor/mcp.json`:
60
55
 
61
56
  ```json
62
57
  {
@@ -86,152 +81,86 @@ Add to `~/Library/Application Support/Claude/claude_desktop_config.json` (macOS)
86
81
 
87
82
  ---
88
83
 
89
- ## Tools Reference
90
-
91
- ### Sentinel (16 tools)
92
- *Work tracking: issues, epics, test specs*
93
-
94
- | Tool | Description |
95
- |------|-------------|
96
- | `sentinel_create_issue` | Create a tracked issue with severity (low/med/high/critical) |
97
- | `sentinel_close_issue` | Close an issue with resolution note |
98
- | `sentinel_list_repo_issues` | List issues for a project, optionally filtered by status |
99
- | `sentinel_listIssues` | List issues with filtering by epic or status |
100
- | `sentinel_createIssue` | Create issue (YAML format with auto-generated ID) |
101
- | `sentinel_log_epic` | Create a new epic (large feature) record |
102
- | `sentinel_list_epics` | List all epics with optional filters |
103
- | `sentinel_get_epic` | Get details of a specific epic |
104
- | `sentinel_get_epic_issues` | Get all issues linked to an epic |
105
- | `sentinel_resolve_epic` | Fuzzy search for epics by name or keyword |
106
- | `sentinel_scan` | Scan project data for validation, orphans, stale items |
107
- | `sentinel_scanData` | Scan using Python Sentinel Data Inspector |
108
- | `sentinel_createTestSpec` | Create a test specification atom |
109
- | `sentinel_listTestSpecs` | List all test specifications |
110
- | `sentinel_compileTests` | Compile test specs into documentation |
111
- | `sentinel_auditPolicies` | Audit policy compliance and freshness |
112
-
113
- ### Dojo (10 tools)
114
- *AI Feature Incubator: wishes, proposals, experiments*
115
-
116
- | Tool | Description |
117
- |------|-------------|
118
- | `dojo_add_wish` | Add a capability wish (what, why, inputs, outputs) |
119
- | `dojo_list_wishes` | List wishes from the wishlist |
120
- | `dojo_create_proposal` | Create a proposal for a feature or capability |
121
- | `dojo_scaffold_experiment` | Create experiment skeleton from a proposal |
122
- | `dojo_list` | List proposals, experiments, and wishes |
123
- | `dojo_run_experiment` | Run an experiment in sandbox mode |
124
- | `dojo_get_results` | Get results from a previous experiment run |
125
- | `dojo_read_artifact` | Read artifact file from experiment results |
126
- | `dojo_can_graduate` | Check if experiment can graduate to real tool |
127
- | `dojo_projects` | List available projects for Dojo operations |
128
-
129
- ### Architect (6 tools)
130
- *Architecture decisions and policies*
131
-
132
- | Tool | Description |
133
- |------|-------------|
134
- | `architect_record_arch_decision` | Record an ADR (markdown format) |
135
- | `architect_createAdr` | Create ADR (YAML format with auto ID) |
136
- | `architect_createPolicy` | Create a policy with rules and enforcement |
137
- | `architect_listPolicies` | List all policies, filter by severity/tags |
138
- | `architect_getPolicy` | Get details of a specific policy |
139
- | `architect_compileOversight` | Compile policies into documentation |
140
-
141
- ### Roadmap (6 tools)
142
- *Strategic planning and health tracking*
143
-
144
- | Tool | Description |
145
- |------|-------------|
146
- | `roadmap_get` | Get full roadmap (objectives, themes, milestones) |
147
- | `roadmap_list` | List epics with roadmap context and health scores |
148
- | `roadmap_getEpicContext` | Get strategic context for a specific epic |
149
- | `roadmap_getHealth` | Get epics with low health scores needing attention |
150
- | `roadmap_linkEpic` | Link epic to theme, milestone, objectives |
151
- | `roadmap_init` | Initialize a new roadmap.yaml scaffold |
152
-
153
- ### Oracle (2 tools)
154
- *AI-powered recommendations*
155
-
156
- | Tool | Description |
157
- |------|-------------|
158
- | `oracle_next_actions` | Get recommended next actions for a project |
159
- | `oracle_roadmap` | Evaluate roadmap progress against milestones |
160
-
161
- ### Designer (7 tools)
162
- *Design decisions, Figma integration, and creative feedback*
163
-
164
- | Tool | Description |
165
- |------|-------------|
166
- | `designer_record_design_decision` | Record a design decision |
167
- | `designer_crit` | Log early creative feedback (gut reactions, hunches) |
168
- | `designer_list_crits` | List crit observations, filter by area/sentiment |
169
- | `designer_sync_tokens` | Sync design tokens from Figma variables |
170
- | `designer_review_figma` | Review Figma component against design principles |
171
- | `designer_upsert_principle` | Create or update a design principle |
172
- | `designer_list_principles` | List design principles, filter by category |
173
-
174
- ### Friction (4 tools)
175
- *Track recurring pain points*
176
-
177
- | Tool | Description |
178
- |------|-------------|
179
- | `friction_log` | Log a friction point (context, description, impact) |
180
- | `friction_list` | List friction points sorted by impact/signal |
181
- | `friction_resolve` | Mark friction as resolved with solution reference |
182
- | `friction_bump` | Bump signal count when encountering same friction |
183
-
184
- ### Learnings (2 tools)
185
- *Living knowledge documents*
186
-
187
- | Tool | Description |
188
- |------|-------------|
189
- | `learnings_append` | Append entry to project's learnings document |
190
- | `learnings_list` | List entries, filter by category |
191
-
192
- ### Context (8 tools)
193
- *AI memory: pinned facts, events, artifacts*
194
-
195
- | Tool | Description |
196
- |------|-------------|
197
- | `decibel_context_refresh` | Compile full context pack for AI memory |
198
- | `decibel_context_pin` | Pin a fact to persistent memory |
199
- | `decibel_context_unpin` | Remove a pinned fact |
200
- | `decibel_context_list` | List all pinned facts |
201
- | `decibel_event_append` | Append event to activity journal |
202
- | `decibel_event_search` | Search events in journal |
203
- | `decibel_artifact_list` | List artifacts for a run |
204
- | `decibel_artifact_read` | Read artifact content |
205
-
206
- ### Registry (7 tools)
207
- *Project discovery and management*
208
-
209
- | Tool | Description |
210
- |------|-------------|
211
- | `project_init` | Initialize .decibel/ folder in a project |
212
- | `project_status` | Check project status and available tools |
213
- | `registry_list` | List all registered projects |
214
- | `registry_add` | Register a project in the registry |
215
- | `registry_remove` | Remove project from registry |
216
- | `registry_alias` | Add alias to a project |
217
- | `registry_resolve` | Test resolution of project ID/alias |
218
-
219
- ### Agentic (4 tools)
220
- *Configuration compilation and rendering*
221
-
222
- | Tool | Description |
223
- |------|-------------|
224
- | `agentic_compile_pack` | Compile config into versioned, hashed pack |
225
- | `agentic_render` | Transform payload into rendered text |
226
- | `agentic_lint` | Validate output against renderer constraints |
227
- | `agentic_golden_eval` | Run golden eval regression tests |
228
-
229
- ### Provenance (1 tool)
230
- *Audit trail*
231
-
232
- | Tool | Description |
233
- |------|-------------|
234
- | `provenance_list` | List provenance events for artifact/actor |
84
+ ## Facade Tools
85
+
86
+ All tools are accessed through **facade commands** — one tool per domain, with an `action` parameter to select the operation. For example: `sentinel` with action `create_issue`.
87
+
88
+ ### Core (always available)
89
+
90
+ | Facade | Domain | Key Actions |
91
+ |--------|--------|-------------|
92
+ | **sentinel** | Work tracking | `create_issue`, `close_issue`, `log_epic`, `list_epics`, `scan` |
93
+ | **architect** | Decisions | `create_adr`, `create_policy`, `list_policies`, `compile_oversight` |
94
+ | **dojo** | Incubation | `add_wish`, `create_proposal`, `scaffold_experiment`, `run_experiment` |
95
+ | **designer** | Design | `record_design_decision`, `crit`, `sync_tokens`, `review_figma` |
96
+ | **oracle** | Recommendations | `next_actions`, `roadmap` |
97
+ | **roadmap** | Strategy | `get`, `list`, `get_health`, `link_epic`, `init` |
98
+ | **git** | Git forensics | `history`, `changes`, `link_issue` |
99
+ | **workflow** | Composites | `status`, `preflight`, `ship`, `investigate` |
100
+ | **vector** | Agent runs | `track`, `drift`, `score` |
101
+ | **context** | AI memory | `pin`, `unpin`, `list`, `refresh`, `event_append`, `event_search` |
102
+ | **auditor** | Code quality | `health`, `refactor_score` |
103
+ | **forecast** | Estimation | `estimate`, `decompose`, `capacity` |
104
+ | **velocity** | Metrics | `trends`, `contributors` |
105
+ | **coordinator** | Multi-agent | `lock`, `unlock`, `heartbeat`, `log`, `message` |
106
+ | **swarm** | Agent sessions | `start_session`, `join_session`, `emit_signal`, `claim_signal` |
107
+ | **friction** | Pain points | `log`, `list`, `resolve`, `bump` |
108
+ | **registry** | Projects | `add`, `remove`, `list`, `alias`, `init`, `status` |
109
+ | **feedback** | Tool feedback | `submit`, `list` |
110
+ | **learnings** | Knowledge | `append`, `list` |
111
+ | **provenance** | Audit trail | `list` |
112
+ | **bench** | Benchmarks | `run`, `compare` |
113
+ | **guardian** | Security | `scan_deps`, `scan_secrets`, `scan_http`, `scan_config`, `report` |
114
+
115
+ ### Pro (requires `DECIBEL_PRO=1`)
116
+
117
+ | Facade | Domain | Key Actions |
118
+ |--------|--------|-------------|
119
+ | **voice** | Voice inbox | `sync`, `list`, `process` |
120
+ | **studio** | Creative assets | `generate_image`, `generate_video` |
121
+ | **corpus** | Code patterns | `search`, `index` |
122
+ | **agentic** | Config compilation | `compile_pack`, `render`, `lint`, `golden_eval` |
123
+
124
+ > All tiers are auto-enabled in development (`NODE_ENV !== 'production'`).
125
+
126
+ ---
127
+
128
+ ## Daemon Mode
129
+
130
+ Run as a persistent background service with HTTP transport:
131
+
132
+ ```bash
133
+ # Start daemon (default port 4888)
134
+ npx @decibelsystems/tools --daemon
135
+
136
+ # Dual mode: stdio + HTTP from one process
137
+ npx @decibelsystems/tools --daemon --stdio
138
+
139
+ # macOS launchd management
140
+ npx @decibelsystems/tools --daemon install
141
+ npx @decibelsystems/tools --daemon uninstall
142
+ npx @decibelsystems/tools --daemon status
143
+ ```
144
+
145
+ The daemon includes log rotation, crash loop protection (5 crashes in 60s), graceful shutdown with request draining, and a `/health` endpoint.
146
+
147
+ ### Configuration
148
+
149
+ Create `~/.decibel/config.yaml` to configure the daemon:
150
+
151
+ ```yaml
152
+ daemon:
153
+ port: 4888
154
+ host: localhost
155
+ auth_token: your-secret-token
156
+ log_max_size_mb: 10
157
+ log_max_files: 3
158
+ rate_limit_rpm: 60
159
+ license:
160
+ key: your-license-key
161
+ ```
162
+
163
+ CLI flags override config file values. Send `SIGHUP` to reload config without restarting.
235
164
 
236
165
  ---
237
166
 
@@ -252,88 +181,41 @@ Data is stored in project-local `.decibel/` folders:
252
181
  │ ├── proposals/ # DOJO-PROP-{nnnn}.yml
253
182
  │ ├── experiments/ # DOJO-EXP-{nnnn}/
254
183
  │ └── wishes/ # WISH-{nnnn}.yml
255
- ├── designer/ # Design decisions
184
+ ├── designer/ # Design decisions, principles, crits
256
185
  ├── friction/ # Pain point logs
257
186
  ├── learnings/ # Knowledge documents
258
187
  ├── context/ # Pinned facts, events
188
+ ├── guardian/ # Security scan results, allowlists
259
189
  └── voice/inbox/ # Voice messages
260
190
  ```
261
191
 
262
- ## Configuration
192
+ ## Environment Variables
193
+
194
+ ### Core
263
195
 
264
196
  | Variable | Default | Description |
265
197
  |----------|---------|-------------|
266
198
  | `DECIBEL_ENV` | `dev` | Environment (dev, staging, prod) |
267
- | `DECIBEL_ORG` | `mediareason` | Organization name |
199
+ | `DECIBEL_ORG` | `default` | Organization name |
268
200
  | `DECIBEL_MCP_ROOT` | `~/.decibel` | Global data storage root |
201
+ | `DECIBEL_PROJECT_ROOT` | — | Current project root path |
202
+ | `DECIBEL_REGISTRY_PATH` | — | Custom registry file location |
269
203
 
270
- Optional for cloud features:
271
- - `SUPABASE_URL` - Supabase project URL
272
- - `SUPABASE_SERVICE_KEY` - Supabase service role key
273
- - `OPENAI_API_KEY` - For image generation
274
- - `FIGMA_ACCESS_TOKEN` - For Figma integration (designer_sync_tokens, designer_review_figma)
204
+ ### Optional Integrations
275
205
 
276
- ## Usage Examples
277
-
278
- ### Example 1: Initialize a Project and Create an Epic
279
-
280
- ```
281
- User: "Initialize decibel for this project and create an epic for user authentication"
282
-
283
- AI uses: project_init → sentinel_log_epic
284
-
285
- Result: Creates .decibel/ folder structure and EPIC-0001.yml for "User Authentication"
286
- ```
287
-
288
- ### Example 2: Track Work with Issues Linked to Epics
289
-
290
- ```
291
- User: "Create issues for the auth epic: login form, password reset, and session management"
292
-
293
- AI uses: sentinel_resolve_epic → sentinel_createIssue (×3)
294
-
295
- Result: Creates ISS-0001, ISS-0002, ISS-0003 all linked to EPIC-0001
296
- ```
297
-
298
- ### Example 3: Record Architecture Decisions
299
-
300
- ```
301
- User: "We decided to use JWT tokens instead of sessions. Document this ADR."
302
-
303
- AI uses: architect_createAdr
304
-
305
- Result: Creates ADR-0001.yml with context, decision, and consequences
306
- ```
307
-
308
- ### Example 4: AI Feature Incubation (Dojo)
309
-
310
- ```
311
- User: "I wish we had a tool that detects rate limit patterns in logs"
312
-
313
- AI uses: dojo_add_wish → dojo_create_proposal → dojo_scaffold_experiment
314
-
315
- Result: WISH-0001.yml → DOJO-PROP-0001.yml → DOJO-EXP-0001/ with entrypoint ready to implement
316
- ```
317
-
318
- ### Example 5: Get Recommended Next Actions
319
-
320
- ```
321
- User: "What should I work on next?"
322
-
323
- AI uses: oracle_next_actions
324
-
325
- Result: Prioritized list based on stale issues, epic health, pending experiments
326
- ```
206
+ | Variable | Used By |
207
+ |----------|---------|
208
+ | `SUPABASE_URL` | Voice inbox, swarm sessions |
209
+ | `SUPABASE_SERVICE_KEY` | Supabase service role key |
210
+ | `FIGMA_ACCESS_TOKEN` | Designer: `sync_tokens`, `review_figma` |
211
+ | `OPENAI_API_KEY` | Studio: image generation |
212
+ | `TOGETHER_API_KEY` | Studio: alternative image generation |
327
213
 
328
214
  ## Privacy Policy
329
215
 
330
216
  **Local Storage Only**: All project data is stored locally in `.decibel/` folders within your project directories. No data is sent to external servers by default.
331
217
 
332
- **Optional Cloud Integrations**: Some tools optionally connect to external services when you explicitly configure API keys:
333
- - **Figma API** (`designer_sync_tokens`, `designer_review_figma`) - requires `FIGMA_ACCESS_TOKEN`
334
- - **Supabase** (voice inbox sync) - requires `SUPABASE_URL` and `SUPABASE_SERVICE_KEY`
335
-
336
- These optional integrations are clearly marked with `openWorldHint: true` in their tool annotations.
218
+ **Optional Cloud Integrations**: Some tools optionally connect to external services when you explicitly configure API keys (Figma, Supabase, OpenAI). These are clearly marked with `openWorldHint: true` in their tool annotations.
337
219
 
338
220
  **No Telemetry**: This MCP server does not collect telemetry, usage analytics, or any form of tracking data.
339
221
 
@@ -0,0 +1,11 @@
1
+ /**
2
+ * Allowlist of facade+action pairs that remote agents can queue.
3
+ * Only write operations should be listed here.
4
+ * Both httpServer.ts (queue detection) and agent_queue_sync (replay) use this.
5
+ */
6
+ export declare const QUEUEABLE_ACTIONS: Record<string, string[]>;
7
+ /**
8
+ * Check if a facade+action pair is queueable by remote agents.
9
+ */
10
+ export declare function isQueueable(facade: string, action: string): boolean;
11
+ //# sourceMappingURL=queueableActions.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"queueableActions.d.ts","sourceRoot":"","sources":["../../src/config/queueableActions.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,eAAO,MAAM,iBAAiB,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,CAQtD,CAAC;AAEF;;GAEG;AACH,wBAAgB,WAAW,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,OAAO,CAGnE"}
@@ -0,0 +1,22 @@
1
+ /**
2
+ * Allowlist of facade+action pairs that remote agents can queue.
3
+ * Only write operations should be listed here.
4
+ * Both httpServer.ts (queue detection) and agent_queue_sync (replay) use this.
5
+ */
6
+ export const QUEUEABLE_ACTIONS = {
7
+ sentinel: ['create_issue', 'log_epic'],
8
+ architect: ['create_adr'],
9
+ dojo: ['add_wish', 'create_proposal'],
10
+ friction: ['log', 'bump'],
11
+ designer: ['record_design_decision'],
12
+ feedback: ['submit'],
13
+ provenance: ['emit'],
14
+ };
15
+ /**
16
+ * Check if a facade+action pair is queueable by remote agents.
17
+ */
18
+ export function isQueueable(facade, action) {
19
+ const actions = QUEUEABLE_ACTIONS[facade];
20
+ return !!actions && actions.includes(action);
21
+ }
22
+ //# sourceMappingURL=queueableActions.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"queueableActions.js","sourceRoot":"","sources":["../../src/config/queueableActions.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,MAAM,CAAC,MAAM,iBAAiB,GAA6B;IACzD,QAAQ,EAAI,CAAC,cAAc,EAAE,UAAU,CAAC;IACxC,SAAS,EAAG,CAAC,YAAY,CAAC;IAC1B,IAAI,EAAQ,CAAC,UAAU,EAAE,iBAAiB,CAAC;IAC3C,QAAQ,EAAI,CAAC,KAAK,EAAE,MAAM,CAAC;IAC3B,QAAQ,EAAI,CAAC,wBAAwB,CAAC;IACtC,QAAQ,EAAI,CAAC,QAAQ,CAAC;IACtB,UAAU,EAAE,CAAC,MAAM,CAAC;CACrB,CAAC;AAEF;;GAEG;AACH,MAAM,UAAU,WAAW,CAAC,MAAc,EAAE,MAAc;IACxD,MAAM,OAAO,GAAG,iBAAiB,CAAC,MAAM,CAAC,CAAC;IAC1C,OAAO,CAAC,CAAC,OAAO,IAAI,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;AAC/C,CAAC"}
package/dist/daemon.d.ts CHANGED
@@ -69,6 +69,35 @@ export declare function daemonStatus(): {
69
69
  launchd: boolean;
70
70
  port: number | null;
71
71
  };
72
+ export interface DaemonAgent {
73
+ id: string;
74
+ capabilities: string[];
75
+ connectedAt: string;
76
+ lastHeartbeat: string;
77
+ status: 'active' | 'busy' | 'idle';
78
+ currentTask?: string;
79
+ allowedFacades?: string[];
80
+ tier?: 'core' | 'pro' | 'apps';
81
+ }
82
+ export declare class AgentRegistry {
83
+ private agents;
84
+ register(init: {
85
+ id: string;
86
+ capabilities?: string[];
87
+ allowedFacades?: string[];
88
+ tier?: 'core' | 'pro' | 'apps';
89
+ }): DaemonAgent;
90
+ heartbeat(agentId: string, update?: {
91
+ status?: 'active' | 'busy' | 'idle';
92
+ currentTask?: string;
93
+ }): DaemonAgent | null;
94
+ disconnect(agentId: string): boolean;
95
+ get(agentId: string): DaemonAgent | undefined;
96
+ list(): DaemonAgent[];
97
+ sweepStale(staleMs?: number): string[];
98
+ get count(): number;
99
+ toJSON(): object[];
100
+ }
72
101
  /**
73
102
  * Handle daemon subcommands: install, uninstall, status.
74
103
  * Returns true if a subcommand was handled (and process should exit).
@@ -1 +1 @@
1
- {"version":3,"file":"daemon.d.ts","sourceRoot":"","sources":["../src/daemon.ts"],"names":[],"mappings":"AAgDA;;GAEG;AACH,wBAAgB,OAAO,IAAI,MAAM,GAAG,IAAI,CAQvC;AAED;;GAEG;AACH,wBAAgB,QAAQ,IAAI,IAAI,CAI/B;AAED;;GAEG;AACH,wBAAgB,SAAS,IAAI,IAAI,CAOhC;AAED;;;GAGG;AACH,wBAAgB,YAAY,IAAI,MAAM,GAAG,IAAI,CAQ5C;AAMD,wBAAgB,UAAU,IAAI,MAAM,CAGnC;AASD;;;;GAIG;AACH,wBAAgB,SAAS,CACvB,QAAQ,EAAE,MAAM,EAChB,YAAY,GAAE,MAA8B,EAC5C,QAAQ,GAAE,MAA8B,GACvC,OAAO,CA0BT;AA6BD;;;GAGG;AACH,wBAAgB,cAAc,IAAI,OAAO,CAyBxC;AAED;;;GAGG;AACH,wBAAgB,mBAAmB,IAAI,IAAI,CAQ1C;AAED;;GAEG;AACH,wBAAgB,YAAY,IAAI,IAAI,CAGnC;AAQD;;;GAGG;AACH,wBAAgB,uBAAuB,CACrC,OAAO,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,GAC3B,IAAI,CA8BN;AAYD;;GAEG;AACH,wBAAgB,cAAc,CAAC,OAAO,CAAC,EAAE;IAAE,IAAI,CAAC,EAAE,MAAM,CAAA;CAAE,GAAG;IAAE,SAAS,EAAE,OAAO,CAAC;IAAC,IAAI,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE,CAgDjH;AAED;;GAEG;AACH,wBAAgB,gBAAgB,IAAI;IAAE,WAAW,EAAE,OAAO,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE,CAkB5E;AAED;;GAEG;AACH,wBAAgB,YAAY,IAAI;IAC9B,OAAO,EAAE,OAAO,CAAC;IACjB,GAAG,EAAE,MAAM,GAAG,IAAI,CAAC;IACnB,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,OAAO,CAAC;IACjB,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;CACrB,CAUA;AAMD;;;GAGG;AACH,wBAAgB,sBAAsB,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,OAAO,CAmC9D"}
1
+ {"version":3,"file":"daemon.d.ts","sourceRoot":"","sources":["../src/daemon.ts"],"names":[],"mappings":"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"}
package/dist/daemon.js CHANGED
@@ -327,6 +327,70 @@ export function daemonStatus() {
327
327
  port: null, // Would need to read from config or PID metadata
328
328
  };
329
329
  }
330
+ const DEFAULT_STALE_MS = 5 * 60 * 1000; // 5 minutes
331
+ export class AgentRegistry {
332
+ agents = new Map();
333
+ register(init) {
334
+ const now = new Date().toISOString();
335
+ const existing = this.agents.get(init.id);
336
+ const agent = {
337
+ id: init.id,
338
+ capabilities: init.capabilities || existing?.capabilities || [],
339
+ connectedAt: existing?.connectedAt || now,
340
+ lastHeartbeat: now,
341
+ status: 'active',
342
+ allowedFacades: init.allowedFacades || existing?.allowedFacades,
343
+ tier: init.tier || existing?.tier,
344
+ };
345
+ this.agents.set(init.id, agent);
346
+ log(`AgentRegistry: registered ${init.id} (${this.agents.size} total)`);
347
+ return agent;
348
+ }
349
+ heartbeat(agentId, update) {
350
+ const agent = this.agents.get(agentId);
351
+ if (!agent)
352
+ return null;
353
+ agent.lastHeartbeat = new Date().toISOString();
354
+ if (update?.status)
355
+ agent.status = update.status;
356
+ if (update?.currentTask !== undefined)
357
+ agent.currentTask = update.currentTask;
358
+ return agent;
359
+ }
360
+ disconnect(agentId) {
361
+ const had = this.agents.has(agentId);
362
+ this.agents.delete(agentId);
363
+ if (had)
364
+ log(`AgentRegistry: disconnected ${agentId} (${this.agents.size} remaining)`);
365
+ return had;
366
+ }
367
+ get(agentId) {
368
+ return this.agents.get(agentId);
369
+ }
370
+ list() {
371
+ return [...this.agents.values()];
372
+ }
373
+ sweepStale(staleMs = DEFAULT_STALE_MS) {
374
+ const cutoff = Date.now() - staleMs;
375
+ const swept = [];
376
+ for (const [id, agent] of this.agents) {
377
+ if (new Date(agent.lastHeartbeat).getTime() < cutoff) {
378
+ this.agents.delete(id);
379
+ swept.push(id);
380
+ }
381
+ }
382
+ if (swept.length > 0) {
383
+ log(`AgentRegistry: swept ${swept.length} stale agent(s): ${swept.join(', ')}`);
384
+ }
385
+ return swept;
386
+ }
387
+ get count() {
388
+ return this.agents.size;
389
+ }
390
+ toJSON() {
391
+ return this.list().map(a => ({ ...a }));
392
+ }
393
+ }
330
394
  // ============================================================================
331
395
  // CLI Subcommands (called from server.ts)
332
396
  // ============================================================================
@@ -1 +1 @@
1
- {"version":3,"file":"daemon.js","sourceRoot":"","sources":["../src/daemon.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"daemon.js","sourceRoot":"","sources":["../src/daemon.ts"],"names":[],"mappings":"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"}
@@ -1,3 +1,8 @@
1
+ export interface AgentConfig {
2
+ rate_limit_rpm?: number;
3
+ allowed_facades?: string[];
4
+ tier?: 'core' | 'pro' | 'apps';
5
+ }
1
6
  export interface DaemonConfig {
2
7
  daemon: {
3
8
  port: number;
@@ -6,10 +11,12 @@ export interface DaemonConfig {
6
11
  log_max_size_mb: number;
7
12
  log_max_files: number;
8
13
  rate_limit_rpm: number;
14
+ gc_interval_secs: number;
9
15
  };
10
16
  license?: {
11
17
  key?: string;
12
18
  };
19
+ agents?: Record<string, AgentConfig>;
13
20
  }
14
21
  /**
15
22
  * Load config from ~/.decibel/config.yaml, merged with defaults.