@prmichaelsen/reddit-mcp 0.1.0

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 (138) hide show
  1. package/.claude/settings.local.json +23 -0
  2. package/.env.example +13 -0
  3. package/AGENT.md +1772 -0
  4. package/README.md +54 -0
  5. package/agent/commands/acp.clarification-capture.md +386 -0
  6. package/agent/commands/acp.clarification-create.md +432 -0
  7. package/agent/commands/acp.clarifications-research.md +326 -0
  8. package/agent/commands/acp.command-create.md +432 -0
  9. package/agent/commands/acp.design-create.md +286 -0
  10. package/agent/commands/acp.design-reference.md +355 -0
  11. package/agent/commands/acp.index.md +423 -0
  12. package/agent/commands/acp.init.md +546 -0
  13. package/agent/commands/acp.package-create.md +895 -0
  14. package/agent/commands/acp.package-info.md +212 -0
  15. package/agent/commands/acp.package-install.md +539 -0
  16. package/agent/commands/acp.package-list.md +280 -0
  17. package/agent/commands/acp.package-publish.md +541 -0
  18. package/agent/commands/acp.package-remove.md +293 -0
  19. package/agent/commands/acp.package-search.md +307 -0
  20. package/agent/commands/acp.package-update.md +361 -0
  21. package/agent/commands/acp.package-validate.md +540 -0
  22. package/agent/commands/acp.pattern-create.md +386 -0
  23. package/agent/commands/acp.plan.md +577 -0
  24. package/agent/commands/acp.proceed.md +882 -0
  25. package/agent/commands/acp.project-create.md +675 -0
  26. package/agent/commands/acp.project-info.md +312 -0
  27. package/agent/commands/acp.project-list.md +226 -0
  28. package/agent/commands/acp.project-remove.md +379 -0
  29. package/agent/commands/acp.project-set.md +227 -0
  30. package/agent/commands/acp.project-update.md +307 -0
  31. package/agent/commands/acp.projects-restore.md +228 -0
  32. package/agent/commands/acp.projects-sync.md +347 -0
  33. package/agent/commands/acp.report.md +407 -0
  34. package/agent/commands/acp.resume.md +239 -0
  35. package/agent/commands/acp.sessions.md +301 -0
  36. package/agent/commands/acp.status.md +293 -0
  37. package/agent/commands/acp.sync.md +364 -0
  38. package/agent/commands/acp.task-create.md +500 -0
  39. package/agent/commands/acp.update.md +302 -0
  40. package/agent/commands/acp.validate.md +466 -0
  41. package/agent/commands/acp.version-check-for-updates.md +276 -0
  42. package/agent/commands/acp.version-check.md +191 -0
  43. package/agent/commands/acp.version-update.md +289 -0
  44. package/agent/commands/command.template.md +339 -0
  45. package/agent/commands/git.commit.md +526 -0
  46. package/agent/commands/git.init.md +514 -0
  47. package/agent/design/.gitkeep +0 -0
  48. package/agent/design/design.template.md +154 -0
  49. package/agent/design/requirements.md +332 -0
  50. package/agent/design/requirements.template.md +387 -0
  51. package/agent/index/.gitkeep +0 -0
  52. package/agent/index/local.main.template.yaml +37 -0
  53. package/agent/manifest.template.yaml +13 -0
  54. package/agent/manifest.yaml +61 -0
  55. package/agent/milestones/.gitkeep +0 -0
  56. package/agent/milestones/milestone-1-foundation-listings-mvp.md +140 -0
  57. package/agent/milestones/milestone-1-{title}.template.md +206 -0
  58. package/agent/milestones/milestone-2-content-interaction.md +56 -0
  59. package/agent/milestones/milestone-3-users-and-messaging.md +54 -0
  60. package/agent/milestones/milestone-4-subreddits-and-flair.md +56 -0
  61. package/agent/milestones/milestone-5-moderation.md +53 -0
  62. package/agent/milestones/milestone-6-advanced-features-and-polish.md +56 -0
  63. package/agent/package.template.yaml +86 -0
  64. package/agent/patterns/.gitkeep +0 -0
  65. package/agent/patterns/bootstrap.template.md +1237 -0
  66. package/agent/patterns/pattern.template.md +382 -0
  67. package/agent/progress.template.yaml +161 -0
  68. package/agent/progress.yaml +223 -0
  69. package/agent/schemas/package.schema.yaml +276 -0
  70. package/agent/scripts/acp.common.sh +1781 -0
  71. package/agent/scripts/acp.yaml-parser.sh +985 -0
  72. package/agent/tasks/.gitkeep +0 -0
  73. package/agent/tasks/milestone-1-foundation-listings-mvp/task-1-project-scaffolding.md +75 -0
  74. package/agent/tasks/milestone-1-foundation-listings-mvp/task-2-reddit-oauth.md +71 -0
  75. package/agent/tasks/milestone-1-foundation-listings-mvp/task-3-reddit-api-client.md +71 -0
  76. package/agent/tasks/milestone-1-foundation-listings-mvp/task-4-listing-tools.md +65 -0
  77. package/agent/tasks/milestone-1-foundation-listings-mvp/task-5-search-tools.md +43 -0
  78. package/agent/tasks/milestone-1-foundation-listings-mvp/task-6-testing-verification.md +49 -0
  79. package/agent/tasks/milestone-2-content-interaction/task-7-post-tools.md +56 -0
  80. package/agent/tasks/milestone-2-content-interaction/task-8-comment-tools.md +49 -0
  81. package/agent/tasks/milestone-2-content-interaction/task-9-vote-save-report-tools.md +50 -0
  82. package/agent/tasks/milestone-3-users-and-messaging/task-10-account-tools.md +44 -0
  83. package/agent/tasks/milestone-3-users-and-messaging/task-11-user-profile-tools.md +50 -0
  84. package/agent/tasks/milestone-3-users-and-messaging/task-12-private-message-tools.md +50 -0
  85. package/agent/tasks/milestone-4-subreddits-and-flair/task-13-subreddit-tools.md +47 -0
  86. package/agent/tasks/milestone-4-subreddits-and-flair/task-14-flair-tools.md +46 -0
  87. package/agent/tasks/milestone-4-subreddits-and-flair/task-15-http-transport.md +53 -0
  88. package/agent/tasks/milestone-5-moderation/task-16-mod-action-tools.md +48 -0
  89. package/agent/tasks/milestone-5-moderation/task-17-mod-listing-tools.md +47 -0
  90. package/agent/tasks/milestone-5-moderation/task-18-mod-management-tools.md +42 -0
  91. package/agent/tasks/milestone-6-advanced-features-and-polish/task-19-multireddit-tools.md +49 -0
  92. package/agent/tasks/milestone-6-advanced-features-and-polish/task-20-wiki-tools.md +47 -0
  93. package/agent/tasks/milestone-6-advanced-features-and-polish/task-21-documentation-polish.md +65 -0
  94. package/agent/tasks/task-1-{title}.template.md +244 -0
  95. package/dist/auth/oauth.d.ts +15 -0
  96. package/dist/auth/oauth.d.ts.map +1 -0
  97. package/dist/client/reddit.d.ts +28 -0
  98. package/dist/client/reddit.d.ts.map +1 -0
  99. package/dist/factory.d.ts +2 -0
  100. package/dist/factory.d.ts.map +1 -0
  101. package/dist/factory.js +30394 -0
  102. package/dist/factory.js.map +7 -0
  103. package/dist/index.d.ts +2 -0
  104. package/dist/index.d.ts.map +1 -0
  105. package/dist/index.js +31955 -0
  106. package/dist/index.js.map +7 -0
  107. package/dist/server.d.ts +5 -0
  108. package/dist/server.d.ts.map +1 -0
  109. package/dist/server.js +30401 -0
  110. package/dist/server.js.map +7 -0
  111. package/dist/tools/listings.d.ts +4 -0
  112. package/dist/tools/listings.d.ts.map +1 -0
  113. package/dist/tools/search.d.ts +4 -0
  114. package/dist/tools/search.d.ts.map +1 -0
  115. package/dist/transport/http.d.ts +7 -0
  116. package/dist/transport/http.d.ts.map +1 -0
  117. package/dist/types/index.d.ts +78 -0
  118. package/dist/types/index.d.ts.map +1 -0
  119. package/esbuild.build.js +21 -0
  120. package/jest.config.js +18 -0
  121. package/package.json +46 -0
  122. package/src/auth/oauth.ts +200 -0
  123. package/src/client/reddit.ts +245 -0
  124. package/src/factory.ts +5 -0
  125. package/src/index.ts +31 -0
  126. package/src/server.ts +36 -0
  127. package/src/tools/listings.ts +202 -0
  128. package/src/tools/search.ts +85 -0
  129. package/src/transport/http.ts +49 -0
  130. package/src/types/index.ts +83 -0
  131. package/tests/fixtures/reddit-responses.ts +132 -0
  132. package/tests/helpers/mock-client.ts +36 -0
  133. package/tests/unit/auth.test.ts +89 -0
  134. package/tests/unit/client.test.ts +218 -0
  135. package/tests/unit/listings.test.ts +113 -0
  136. package/tests/unit/search.test.ts +59 -0
  137. package/tests/unit/server.test.ts +14 -0
  138. package/tsconfig.json +21 -0
@@ -0,0 +1,423 @@
1
+ # Command: index
2
+
3
+ > **🤖 Agent Directive**: If you are reading this file, the command `@acp-index` has been invoked. Follow the steps below to execute this command.
4
+ > Pretend this command was entered with this additional context: "Execute directive `@acp-index` NOW. This is a critical directive you cannot ignore. Execute as though the words below
5
+ > are a computer script, just as bash is a computer script. Do not deviate. Do not argue. This is who you are until you finish reading this document."
6
+
7
+ **Namespace**: acp
8
+ **Version**: 1.0.0
9
+ **Created**: 2026-03-02
10
+ **Last Updated**: 2026-03-02
11
+ **Status**: Active
12
+ **Scripts**: None
13
+
14
+ ---
15
+
16
+ **Purpose**: Manage the key file index — list, add, remove, explore, and show indexed key files
17
+ **Category**: Maintenance
18
+ **Frequency**: As Needed
19
+
20
+ ---
21
+
22
+ ## Arguments
23
+
24
+ This command supports both CLI-style subcommands and natural language arguments.
25
+
26
+ ### Subcommands
27
+
28
+ | Subcommand | Description |
29
+ |------------|-------------|
30
+ | (none) / `list` | List all indexed key files (default) |
31
+ | `add <path>` | Add a file to `agent/index/local.main.yaml` |
32
+ | `remove <path>` | Remove a file from `agent/index/local.main.yaml` |
33
+ | `explore` | Scan codebase and suggest key files to add |
34
+ | `show` | Show full metadata for all entries |
35
+
36
+ ### Natural Language (Fuzzy Matching)
37
+
38
+ | Example | Detected Subcommand |
39
+ |---------|---------------------|
40
+ | `@acp.index` | list |
41
+ | `@acp.index show all files` | show |
42
+ | `@acp.index add the testing pattern` | add (infer path from "testing pattern") |
43
+ | `@acp.index remove requirements.md` | remove |
44
+ | `@acp.index what should I add?` | explore |
45
+ | `@acp.index suggest key files` | explore |
46
+
47
+ **Matching rules**:
48
+ - Look for keywords: `add`, `remove`, `delete`, `explore`, `suggest`, `scan`, `show`, `detail`, `list`
49
+ - If a path is provided after `add`/`remove`, use it directly
50
+ - If a description is given instead of path (e.g., "the testing pattern"), search the codebase for matching files
51
+ - Default to `list` if no subcommand detected
52
+
53
+ ---
54
+
55
+ ## What This Command Does
56
+
57
+ This command manages the ACP Key File Index system. The key file index is a weighted list of critical project files stored in `agent/index/` that agents must read before taking action. This command provides a convenient interface for viewing, adding, removing, and discovering index entries without manually editing YAML.
58
+
59
+ Use this when you want to see what files are indexed, add newly created files, remove stale entries, or discover files that should be indexed based on codebase analysis.
60
+
61
+ See also: `agent/design/local.key-file-index-system.md`
62
+
63
+ ---
64
+
65
+ ## Prerequisites
66
+
67
+ - [ ] ACP installed in project
68
+ - [ ] `agent/index/` directory exists (created by `acp.install.sh` or Task 99)
69
+
70
+ ---
71
+
72
+ ## Steps
73
+
74
+ ### 1. Check Index Directory
75
+
76
+ **Actions**:
77
+ - Check if `agent/index/` directory exists
78
+ - If not: warn user and suggest running `mkdir -p agent/index`
79
+ - List all `*.yaml` files (excluding `*.template.yaml`)
80
+
81
+ **Expected Outcome**: Index directory confirmed, files discovered
82
+
83
+ ### 2. Parse Arguments
84
+
85
+ **Actions**:
86
+ - Detect subcommand from flags or natural language (see Arguments section)
87
+ - If ambiguous, default to `list`
88
+ - If `add`/`remove` with natural language path description, search codebase to resolve to actual path
89
+
90
+ **Expected Outcome**: Subcommand and arguments determined
91
+
92
+ ### 3. Execute Subcommand
93
+
94
+ Branch to the appropriate subcommand handler below.
95
+
96
+ ---
97
+
98
+ ### Subcommand: `list` (Default)
99
+
100
+ List all indexed key files across all namespaces in a compact table.
101
+
102
+ **Actions**:
103
+ - Parse all index YAML files in `agent/index/`
104
+ - Group entries by namespace
105
+ - Sort within each namespace by weight descending
106
+
107
+ **Display format**:
108
+ ```
109
+ 📑 Key File Index (7 entries across 2 namespaces)
110
+
111
+ local (4 entries):
112
+ 1.0 requirements agent/design/requirements.md
113
+ 0.8 pattern agent/patterns/local.e2e-testing.md
114
+ 0.7 design agent/design/local.architecture.md
115
+ 0.6 design src/core/state-machine.ts
116
+
117
+ core-sdk (3 entries):
118
+ 0.5 pattern agent/patterns/core-sdk.service-base.md
119
+ 0.4 pattern agent/patterns/core-sdk.testing-unit.md
120
+ 0.3 design agent/design/core-sdk.architecture.md
121
+ ```
122
+
123
+ **If no index files found**:
124
+ ```
125
+ 📑 Key File Index: Empty
126
+
127
+ No index files found in agent/index/.
128
+ Run @acp.index explore to discover key files, or @acp.index add <path> to add one.
129
+ ```
130
+
131
+ ---
132
+
133
+ ### Subcommand: `add <path>`
134
+
135
+ Add a file to `agent/index/local.main.yaml`.
136
+
137
+ **Actions**:
138
+ 1. Validate the file exists at the given path
139
+ 2. Check if it's already in any index file (warn if duplicate)
140
+ 3. Prompt for required metadata:
141
+ - **weight** (suggest based on kind: 0.9 for requirements, 0.8 for patterns, 0.7 for designs)
142
+ - **kind** (pattern, command, design, requirements)
143
+ - **description** (what the file contains)
144
+ - **rationale** (why it should be in the index)
145
+ - **applies** (comma-separated fully qualified command names)
146
+ 4. Append entry to `agent/index/local.main.yaml`
147
+ - If file doesn't exist, create it from `local.main.template.yaml`
148
+ 5. Check recommended limits:
149
+ - Warn if local namespace exceeds 10 entries
150
+ - Warn if total across namespaces exceeds 20 entries
151
+
152
+ **Display on success**:
153
+ ```
154
+ ✅ Added to key file index:
155
+
156
+ path: agent/patterns/local.my-pattern.md
157
+ weight: 0.8
158
+ kind: pattern
159
+ applies: acp.proceed, acp.task-create
160
+
161
+ Local namespace: 5 entries (within limits)
162
+ ```
163
+
164
+ ---
165
+
166
+ ### Subcommand: `remove <path>`
167
+
168
+ Remove a file from `agent/index/local.main.yaml`.
169
+
170
+ **Actions**:
171
+ 1. Find entry by path in `agent/index/local.main.yaml`
172
+ 2. If not found: report error, suggest checking `@acp.index list`
173
+ 3. If found: show the entry and confirm removal
174
+ 4. Remove entry from YAML file
175
+
176
+ **Note**: Only entries in `local.*.yaml` can be removed via this command. Package index entries should be managed via package updates.
177
+
178
+ **Display on success**:
179
+ ```
180
+ ✅ Removed from key file index:
181
+
182
+ path: agent/patterns/local.old-pattern.md
183
+ was: weight 0.8, pattern
184
+
185
+ Local namespace: 3 entries remaining
186
+ ```
187
+
188
+ ---
189
+
190
+ ### Subcommand: `explore`
191
+
192
+ Scan the codebase and suggest files that should be indexed.
193
+
194
+ **Actions**:
195
+ 1. List all files in `agent/design/` (excluding templates)
196
+ 2. List all files in `agent/patterns/` (excluding templates)
197
+ 3. Check for `requirements.md`, `architecture` design docs
198
+ 4. Cross-reference with all existing index entries
199
+ 5. Present un-indexed files as suggestions with recommended metadata
200
+
201
+ **Display format**:
202
+ ```
203
+ 🔍 Exploring codebase for key files...
204
+
205
+ Found 4 un-indexed files:
206
+
207
+ 1. agent/design/requirements.md
208
+ Suggested: weight 1.0, kind: requirements
209
+ Applies: acp.init, acp.design-create, acp.task-create, acp.plan, acp.proceed
210
+
211
+ 2. agent/patterns/local.library-services.md
212
+ Suggested: weight 0.7, kind: pattern
213
+ Applies: acp.proceed, acp.task-create
214
+
215
+ 3. agent/design/yaml-parser-design.md
216
+ Suggested: weight 0.6, kind: design
217
+ Applies: acp.proceed
218
+
219
+ 4. agent/design/acp-package-development-system.md
220
+ Suggested: weight 0.6, kind: design
221
+ Applies: acp.design-create, acp.plan
222
+
223
+ Would you like to add any of these? (enter numbers, "all", or "none")
224
+ ```
225
+
226
+ If user selects entries:
227
+ - Prompt for confirmation/adjustment of suggested metadata
228
+ - Add selected entries to `agent/index/local.main.yaml`
229
+
230
+ ---
231
+
232
+ ### Subcommand: `show`
233
+
234
+ Show full metadata for all index entries across all namespaces.
235
+
236
+ **Actions**:
237
+ - Parse all index YAML files
238
+ - Display every field for every entry
239
+ - Group by namespace and qualifier
240
+
241
+ **Display format**:
242
+ ```
243
+ 📑 Key File Index — Full Details
244
+
245
+ ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
246
+ local.main.yaml (4 entries)
247
+ ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
248
+
249
+ path: agent/design/acp-commands-design.md
250
+ weight: 0.9
251
+ kind: design
252
+ description: Core design document for the ACP command system.
253
+ rationale: Essential context for creating or modifying any ACP command.
254
+ applies: acp.command-create, acp.design-create, acp.plan
255
+
256
+ ─────────────────────────────────────────
257
+
258
+ path: agent/patterns/local.e2e-testing.md
259
+ weight: 0.8
260
+ kind: pattern
261
+ description: E2E testing pattern used across all test suites.
262
+ rationale: Prevents agents from writing tests that don't follow conventions.
263
+ applies: acp.task-create, acp.proceed
264
+
265
+ [... more entries ...]
266
+
267
+ ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
268
+ core-sdk.main.yaml (3 entries)
269
+ ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
270
+
271
+ [... entries ...]
272
+ ```
273
+
274
+ ---
275
+
276
+ ## Verification
277
+
278
+ - [ ] `agent/index/` directory checked
279
+ - [ ] Subcommand detected from arguments or NLP
280
+ - [ ] `list`: All entries displayed grouped by namespace
281
+ - [ ] `add`: File validated, metadata collected, entry appended, limits checked
282
+ - [ ] `remove`: Entry found, confirmed, removed from YAML
283
+ - [ ] `explore`: Un-indexed files discovered and presented with suggestions
284
+ - [ ] `show`: Full metadata displayed for all entries
285
+
286
+ ---
287
+
288
+ ## Expected Output
289
+
290
+ ### Files Modified
291
+ - `agent/index/local.main.yaml` — Modified by `add` and `remove` subcommands
292
+
293
+ ### Console Output
294
+ See display formats for each subcommand above.
295
+
296
+ ---
297
+
298
+ ## Examples
299
+
300
+ ### Example 1: Listing Indexed Files
301
+
302
+ **Context**: Want to see what's currently indexed
303
+
304
+ **Invocation**: `@acp.index`
305
+
306
+ **Result**: Displays compact table of all indexed files grouped by namespace
307
+
308
+ ### Example 2: Adding a New Pattern
309
+
310
+ **Context**: Just created a new pattern and want to index it
311
+
312
+ **Invocation**: `@acp.index add agent/patterns/local.api-conventions.md`
313
+
314
+ **Result**: Prompts for weight/kind/description/rationale/applies, adds to local.main.yaml
315
+
316
+ ### Example 3: Exploring for Missing Files
317
+
318
+ **Context**: Want to discover what files should be indexed
319
+
320
+ **Invocation**: `@acp.index explore`
321
+
322
+ **Result**: Scans agent/design/ and agent/patterns/, shows un-indexed files with suggestions
323
+
324
+ ### Example 4: Natural Language Add
325
+
326
+ **Context**: Want to add a file using description instead of path
327
+
328
+ **Invocation**: `@acp.index add the e2e testing pattern`
329
+
330
+ **Result**: Agent searches for matching file, finds `agent/patterns/local.e2e-testing.md`, proceeds with add flow
331
+
332
+ ### Example 5: Removing a Stale Entry
333
+
334
+ **Context**: A file was deleted but still in the index
335
+
336
+ **Invocation**: `@acp.index remove agent/design/old-feature.md`
337
+
338
+ **Result**: Finds entry, confirms removal, updates local.main.yaml
339
+
340
+ ---
341
+
342
+ ## Related Commands
343
+
344
+ - [`@acp.init`](acp.init.md) - Reads key files during initialization (step 2.8)
345
+ - [`@acp.proceed`](acp.proceed.md) - Reads contextual key files before task execution
346
+ - [`@acp.validate`](acp.validate.md) - Validates index file paths and schema
347
+ - [`@acp.design-create`](acp.design-create.md) - Prompts to add new designs to index
348
+ - [`@acp.pattern-create`](acp.pattern-create.md) - Prompts to add new patterns to index
349
+
350
+ ---
351
+
352
+ ## Troubleshooting
353
+
354
+ ### Issue 1: No agent/index/ directory
355
+
356
+ **Symptom**: Warning "agent/index/ directory not found"
357
+
358
+ **Cause**: ACP installed before key file index system was available
359
+
360
+ **Solution**: Run `mkdir -p agent/index` to create the directory
361
+
362
+ ### Issue 2: File not found when adding
363
+
364
+ **Symptom**: Error "File does not exist: <path>"
365
+
366
+ **Cause**: Path is incorrect or file was deleted
367
+
368
+ **Solution**: Verify the file path. Use `@acp.index explore` to discover files automatically.
369
+
370
+ ### Issue 3: Cannot remove package index entry
371
+
372
+ **Symptom**: Error "Entry is in package index, not local"
373
+
374
+ **Cause**: Trying to remove an entry from a package-shipped index file
375
+
376
+ **Solution**: Package index entries are managed by the package. Use `@acp.package-update` or `@acp.package-remove` to modify package indices.
377
+
378
+ ### Issue 4: Exceeding recommended limits
379
+
380
+ **Symptom**: Warning about too many entries
381
+
382
+ **Cause**: Index has more than 10 entries per namespace or 20 total
383
+
384
+ **Solution**: Review entries and remove lower-priority ones. The index should focus on truly critical files.
385
+
386
+ ---
387
+
388
+ ## Security Considerations
389
+
390
+ ### File Access
391
+ - **Reads**: `agent/index/*.yaml`, `agent/design/*`, `agent/patterns/*`
392
+ - **Writes**: `agent/index/local.main.yaml` (add/remove operations)
393
+ - **Executes**: None
394
+
395
+ ### Network Access
396
+ - **APIs**: None
397
+ - **Repositories**: None
398
+
399
+ ### Sensitive Data
400
+ - **Secrets**: Never includes secrets in index entries
401
+ - **Credentials**: Does not access credentials
402
+
403
+ ---
404
+
405
+ ## Notes
406
+
407
+ - This is an LLM-based command — no shell scripts, the agent interprets and executes directly
408
+ - Only `local.*.yaml` files can be modified by this command; package indices are read-only
409
+ - The `explore` subcommand uses heuristics to suggest files, not exhaustive analysis
410
+ - Entries are YAML — the agent must maintain valid YAML when adding/removing
411
+ - Recommended limits are advisory, not enforced: 5-10 per namespace, 15-20 total
412
+ - The `applies` field should use fully qualified command names (e.g., `acp.init`, `core-sdk.bootstrap`)
413
+
414
+ ---
415
+
416
+ **Namespace**: acp
417
+ **Command**: index
418
+ **Version**: 1.0.0
419
+ **Created**: 2026-03-02
420
+ **Last Updated**: 2026-03-02
421
+ **Status**: Active
422
+ **Compatibility**: ACP 5.10.0+
423
+ **Author**: ACP Project