@prmichaelsen/task-mcp 0.2.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 (142) hide show
  1. package/.env.example +19 -0
  2. package/AGENT.md +1165 -0
  3. package/CHANGELOG.md +72 -0
  4. package/agent/commands/acp.commit.md +511 -0
  5. package/agent/commands/acp.init.md +376 -0
  6. package/agent/commands/acp.package-install.md +347 -0
  7. package/agent/commands/acp.proceed.md +311 -0
  8. package/agent/commands/acp.report.md +392 -0
  9. package/agent/commands/acp.status.md +280 -0
  10. package/agent/commands/acp.sync.md +323 -0
  11. package/agent/commands/acp.update.md +301 -0
  12. package/agent/commands/acp.validate.md +385 -0
  13. package/agent/commands/acp.version-check-for-updates.md +275 -0
  14. package/agent/commands/acp.version-check.md +190 -0
  15. package/agent/commands/acp.version-update.md +288 -0
  16. package/agent/commands/command.template.md +273 -0
  17. package/agent/commands/git.commit.md +511 -0
  18. package/agent/commands/git.init.md +513 -0
  19. package/agent/design/.gitkeep +0 -0
  20. package/agent/design/acp-task-execution-requirements.md +555 -0
  21. package/agent/design/api-dto-design.md +394 -0
  22. package/agent/design/code-extraction-guide.md +827 -0
  23. package/agent/design/design.template.md +136 -0
  24. package/agent/design/requirements.template.md +387 -0
  25. package/agent/design/rest-api-integration.md +489 -0
  26. package/agent/design/sdk-export-requirements.md +549 -0
  27. package/agent/milestones/.gitkeep +0 -0
  28. package/agent/milestones/milestone-1-{title}.template.md +206 -0
  29. package/agent/milestones/milestone-2-task-infrastructure.md +232 -0
  30. package/agent/milestones/milestone-4-autonomous-execution.md +235 -0
  31. package/agent/patterns/.gitkeep +0 -0
  32. package/agent/patterns/bootstrap.md +1271 -0
  33. package/agent/patterns/bootstrap.template.md +1237 -0
  34. package/agent/patterns/pattern.template.md +364 -0
  35. package/agent/progress.template.yaml +158 -0
  36. package/agent/progress.yaml +375 -0
  37. package/agent/scripts/check-for-updates.sh +88 -0
  38. package/agent/scripts/install.sh +157 -0
  39. package/agent/scripts/uninstall.sh +75 -0
  40. package/agent/scripts/update.sh +139 -0
  41. package/agent/scripts/version.sh +35 -0
  42. package/agent/tasks/.gitkeep +0 -0
  43. package/agent/tasks/task-1-{title}.template.md +225 -0
  44. package/agent/tasks/task-86-task-data-model-schemas.md +143 -0
  45. package/agent/tasks/task-87-task-database-service.md +220 -0
  46. package/agent/tasks/task-88-firebase-client-wrapper.md +139 -0
  47. package/agent/tasks/task-88-task-execution-engine.md +277 -0
  48. package/agent/tasks/task-89-mcp-server-implementation.md +197 -0
  49. package/agent/tasks/task-90-build-configuration.md +146 -0
  50. package/agent/tasks/task-91-deployment-configuration.md +128 -0
  51. package/coverage/base.css +224 -0
  52. package/coverage/block-navigation.js +87 -0
  53. package/coverage/favicon.png +0 -0
  54. package/coverage/index.html +191 -0
  55. package/coverage/lcov-report/base.css +224 -0
  56. package/coverage/lcov-report/block-navigation.js +87 -0
  57. package/coverage/lcov-report/favicon.png +0 -0
  58. package/coverage/lcov-report/index.html +191 -0
  59. package/coverage/lcov-report/prettify.css +1 -0
  60. package/coverage/lcov-report/prettify.js +2 -0
  61. package/coverage/lcov-report/sort-arrow-sprite.png +0 -0
  62. package/coverage/lcov-report/sorter.js +210 -0
  63. package/coverage/lcov-report/src/client.ts.html +1030 -0
  64. package/coverage/lcov-report/src/constant/collections.ts.html +469 -0
  65. package/coverage/lcov-report/src/constant/index.html +116 -0
  66. package/coverage/lcov-report/src/dto/index.html +116 -0
  67. package/coverage/lcov-report/src/dto/transformers.ts.html +568 -0
  68. package/coverage/lcov-report/src/index.html +146 -0
  69. package/coverage/lcov-report/src/schemas/index.html +116 -0
  70. package/coverage/lcov-report/src/schemas/task.ts.html +547 -0
  71. package/coverage/lcov-report/src/server-factory.ts.html +418 -0
  72. package/coverage/lcov-report/src/server.ts.html +289 -0
  73. package/coverage/lcov-report/src/services/index.html +116 -0
  74. package/coverage/lcov-report/src/services/task-database.service.ts.html +1495 -0
  75. package/coverage/lcov-report/src/tools/index.html +236 -0
  76. package/coverage/lcov-report/src/tools/index.ts.html +292 -0
  77. package/coverage/lcov-report/src/tools/task-add-message.ts.html +277 -0
  78. package/coverage/lcov-report/src/tools/task-complete-task-item.ts.html +343 -0
  79. package/coverage/lcov-report/src/tools/task-create-milestone.ts.html +286 -0
  80. package/coverage/lcov-report/src/tools/task-create-task-item.ts.html +358 -0
  81. package/coverage/lcov-report/src/tools/task-get-next-step.ts.html +460 -0
  82. package/coverage/lcov-report/src/tools/task-get-status.ts.html +316 -0
  83. package/coverage/lcov-report/src/tools/task-report-completion.ts.html +343 -0
  84. package/coverage/lcov-report/src/tools/task-update-progress.ts.html +232 -0
  85. package/coverage/lcov.info +974 -0
  86. package/coverage/prettify.css +1 -0
  87. package/coverage/prettify.js +2 -0
  88. package/coverage/sort-arrow-sprite.png +0 -0
  89. package/coverage/sorter.js +210 -0
  90. package/coverage/src/client.ts.html +1030 -0
  91. package/coverage/src/constant/collections.ts.html +469 -0
  92. package/coverage/src/constant/index.html +116 -0
  93. package/coverage/src/dto/index.html +116 -0
  94. package/coverage/src/dto/transformers.ts.html +568 -0
  95. package/coverage/src/index.html +146 -0
  96. package/coverage/src/schemas/index.html +116 -0
  97. package/coverage/src/schemas/task.ts.html +547 -0
  98. package/coverage/src/server-factory.ts.html +418 -0
  99. package/coverage/src/server.ts.html +289 -0
  100. package/coverage/src/services/index.html +116 -0
  101. package/coverage/src/services/task-database.service.ts.html +1495 -0
  102. package/coverage/src/tools/index.html +236 -0
  103. package/coverage/src/tools/index.ts.html +292 -0
  104. package/coverage/src/tools/task-add-message.ts.html +277 -0
  105. package/coverage/src/tools/task-complete-task-item.ts.html +343 -0
  106. package/coverage/src/tools/task-create-milestone.ts.html +286 -0
  107. package/coverage/src/tools/task-create-task-item.ts.html +358 -0
  108. package/coverage/src/tools/task-get-next-step.ts.html +460 -0
  109. package/coverage/src/tools/task-get-status.ts.html +316 -0
  110. package/coverage/src/tools/task-report-completion.ts.html +343 -0
  111. package/coverage/src/tools/task-update-progress.ts.html +232 -0
  112. package/firestore.rules +95 -0
  113. package/jest.config.js +31 -0
  114. package/package.json +67 -0
  115. package/src/client.spec.ts +199 -0
  116. package/src/client.ts +315 -0
  117. package/src/constant/collections.ts +128 -0
  118. package/src/dto/index.ts +47 -0
  119. package/src/dto/task-api.dto.ts +219 -0
  120. package/src/dto/transformers.spec.ts +462 -0
  121. package/src/dto/transformers.ts +161 -0
  122. package/src/schemas/task.ts +154 -0
  123. package/src/server-factory.spec.ts +70 -0
  124. package/src/server-factory.ts +111 -0
  125. package/src/server.ts +68 -0
  126. package/src/services/task-database.service.e2e.ts +116 -0
  127. package/src/services/task-database.service.spec.ts +479 -0
  128. package/src/services/task-database.service.ts +470 -0
  129. package/src/test-schemas.ts +161 -0
  130. package/src/tools/index.ts +69 -0
  131. package/src/tools/task-add-message.ts +64 -0
  132. package/src/tools/task-complete-task-item.ts +86 -0
  133. package/src/tools/task-create-milestone.ts +67 -0
  134. package/src/tools/task-create-task-item.ts +91 -0
  135. package/src/tools/task-get-next-step.spec.ts +136 -0
  136. package/src/tools/task-get-next-step.ts +125 -0
  137. package/src/tools/task-get-status.spec.ts +213 -0
  138. package/src/tools/task-get-status.ts +77 -0
  139. package/src/tools/task-report-completion.ts +86 -0
  140. package/src/tools/task-update-progress.ts +49 -0
  141. package/src/tools/tools.spec.ts +194 -0
  142. package/tsconfig.json +31 -0
@@ -0,0 +1,375 @@
1
+ # Project Progress Tracking
2
+ # This file tracks the overall progress of the task-mcp project
3
+
4
+ project:
5
+ name: task-mcp
6
+ version: 0.2.0
7
+ started: 2026-02-16
8
+ status: in_progress
9
+ current_milestone: M2
10
+ description: |
11
+ MCP server for task execution system - Port ACP-style autonomous task execution
12
+ from Roo Code to agentbase.me using MCP server architecture. Enables long-running,
13
+ autonomous task execution where agents work through structured milestones and tasks
14
+ independently in the background.
15
+
16
+ # Milestones represent major phases of the project
17
+ milestones:
18
+ - id: M1
19
+ name: Planning and Design
20
+ status: completed
21
+ progress: 100
22
+ started: 2026-02-16
23
+ completed: 2026-02-16
24
+ estimated_weeks: 1
25
+ tasks_completed: 3
26
+ tasks_total: 3
27
+ notes: |
28
+ Completed comprehensive design documentation including:
29
+ - ACP Task Execution Requirements (design document)
30
+ - Code Extraction Guide (porting guide from Roo Code)
31
+ - Milestone 2 planning document
32
+ All design documents are complete and ready for implementation.
33
+
34
+ - id: M2
35
+ name: MCP Server Foundation
36
+ status: in_progress
37
+ progress: 67
38
+ started: 2026-02-16
39
+ completed: null
40
+ estimated_weeks: 2
41
+ tasks_completed: 4
42
+ tasks_total: 6
43
+ notes: |
44
+ Create task-mcp server with core task management tools.
45
+ This milestone follows the MCP Server Bootstrap Pattern.
46
+ Task list revised to match MCP server scope (instruction-based tools).
47
+ Tasks 86-89 completed. Tasks 90-91 remaining for build and deployment.
48
+
49
+ # Tasks are granular work items within milestones
50
+ tasks:
51
+ milestone_1:
52
+ - id: task-design
53
+ name: ACP Task Execution Requirements
54
+ status: completed
55
+ file: agent/design/acp-task-execution-requirements.md
56
+ estimated_hours: 8
57
+ completed_date: 2026-02-16
58
+ notes: |
59
+ Comprehensive design document for porting ACP task execution to agentbase.me
60
+
61
+ - id: task-extraction
62
+ name: Code Extraction Guide
63
+ status: completed
64
+ file: agent/design/code-extraction-guide.md
65
+ estimated_hours: 6
66
+ completed_date: 2026-02-16
67
+ notes: |
68
+ Detailed guide for extracting and adapting code from Roo Code
69
+
70
+ - id: task-milestone-2
71
+ name: Milestone 2 Planning
72
+ status: completed
73
+ file: agent/milestones/milestone-2-task-infrastructure.md
74
+ estimated_hours: 4
75
+ completed_date: 2026-02-16
76
+ notes: |
77
+ Detailed milestone document for MCP Server Foundation phase
78
+
79
+ milestone_2:
80
+ - id: task-86
81
+ name: Task Data Model and Schemas
82
+ status: completed
83
+ file: agent/tasks/task-86-task-data-model-schemas.md
84
+ estimated_hours: 8
85
+ completed_date: 2026-02-16
86
+ notes: |
87
+ Created Firestore data model, TypeScript interfaces, and Zod schemas.
88
+ All schemas compile without errors and validation tests pass.
89
+
90
+ - id: task-87
91
+ name: Task Database Service
92
+ status: completed
93
+ file: agent/tasks/task-87-task-database-service.md
94
+ estimated_hours: 12
95
+ completed_date: 2026-02-16
96
+ notes: |
97
+ Created comprehensive TaskDatabaseService with CRUD operations, message
98
+ operations, progress tracking, and query methods. All 14 unit tests passing.
99
+
100
+ - id: task-88
101
+ name: Firebase Client Wrapper & MCP Tools Foundation
102
+ status: completed
103
+ file: agent/tasks/task-88-firebase-client-wrapper.md
104
+ estimated_hours: 16
105
+ completed_date: 2026-02-16
106
+ notes: |
107
+ Created Firebase client wrapper and 8 core MCP tools. All tools follow
108
+ MCP Bootstrap Pattern with definition + handler structure.
109
+
110
+ Completed:
111
+ - FirebaseClient wrapper with service account auth (11 tests)
112
+ - 8 MCP tools: get_status, get_next_step, update_progress, complete_task_item,
113
+ create_milestone, create_task_item, report_completion, add_message
114
+ - Comprehensive unit tests (43 total tests passing)
115
+ - Tools index with exports and handler registry
116
+
117
+ - id: task-89
118
+ name: MCP Server Implementation
119
+ status: completed
120
+ file: agent/tasks/task-89-mcp-server-implementation.md
121
+ estimated_hours: 8
122
+ completed_date: 2026-02-16
123
+ notes: |
124
+ Created MCP server with stdio transport and server factory for multi-tenant.
125
+
126
+ Completed:
127
+ - Installed @modelcontextprotocol/sdk
128
+ - Created server-factory.ts with mcp-auth compatible signature
129
+ - Created server.ts with stdio transport
130
+ - Updated package.json with bin entry
131
+ - Wrote comprehensive unit tests with mocked Firebase client
132
+ - All 51 tests passing (14 database + 11 client + 18 tools + 8 server)
133
+ - Server factory accepts (accessToken, userId, options) for mcp-auth compatibility
134
+
135
+ - id: task-90
136
+ name: Build Configuration
137
+ status: not_started
138
+ file: agent/tasks/task-90-build-configuration.md
139
+ estimated_hours: 4
140
+ completed_date: null
141
+ notes: |
142
+ Set up esbuild for bundling server and generating type declarations.
143
+
144
+ - id: task-91
145
+ name: Deployment Configuration
146
+ status: not_started
147
+ file: agent/tasks/task-91-deployment-configuration.md
148
+ estimated_hours: 4
149
+ completed_date: null
150
+ notes: |
151
+ Create Dockerfile, Cloud Run config, and deployment scripts.
152
+
153
+ # Documentation tracking
154
+ documentation:
155
+ design_documents: 3
156
+ milestone_documents: 1
157
+ pattern_documents: 1
158
+ task_documents: 3
159
+ last_updated: 2026-02-16
160
+
161
+ # Overall progress metrics
162
+ progress:
163
+ planning: 100
164
+ implementation: 67
165
+ testing: 85
166
+ documentation: 100
167
+ overall: 67
168
+
169
+ # Recent work log (most recent first)
170
+ recent_work:
171
+ - date: 2026-02-16
172
+ description: |
173
+ Implemented API Response DTOs and transformers for REST API integration.
174
+ Created comprehensive DTO layer to exclude internal fields from API responses.
175
+ items:
176
+ - ✅ Created src/dto/task-api.dto.ts with all DTO type definitions
177
+ - ✅ Defined TaskApiResponse, TaskListApiResponse, TaskMessageApiResponse
178
+ - ✅ Defined input DTOs (CreateTaskDto, UpdateTaskDto, etc.)
179
+ - ✅ Created src/dto/transformers.ts with schema-to-DTO transformation functions
180
+ - ✅ Implemented 9 transformer functions with proper field exclusion
181
+ - ✅ Excluded internal execution fields (api_messages, tool_results) from API responses
182
+ - ✅ Created src/dto/index.ts to export all DTOs and transformers
183
+ - ✅ Updated package.json with ./dto export
184
+ - ✅ Wrote 18 comprehensive unit tests for all transformers
185
+ - ✅ All 69 tests passing (14 database + 11 client + 18 tools + 8 server + 18 dto)
186
+ - ✅ DTO transformers have 100% code coverage
187
+ - 📋 Ready for Task 90: Build Configuration
188
+
189
+ - date: 2026-02-16
190
+ description: |
191
+ Executed @acp.init command - Comprehensive agent context initialization.
192
+ Loaded all documentation, reviewed source code, verified current status.
193
+ items:
194
+ - ✅ Checked for ACP updates (v1.3.1, up to date)
195
+ - ✅ Read 9 agent documentation files (progress.yaml, design docs, milestones, tasks)
196
+ - ✅ Reviewed 5 key source files (schemas, services, client, server, server-factory)
197
+ - ✅ Verified all 51 tests passing (14 database + 11 client + 18 tools + 8 server)
198
+ - ✅ Confirmed Tasks 86-89 completed (4/6 milestone tasks done)
199
+ - ✅ Identified next steps: API DTO implementation and library exports
200
+ - ✅ Updated progress.yaml with initialization entry
201
+ - 📋 Ready to proceed with next task
202
+
203
+ - date: 2026-02-16
204
+ description: |
205
+ Completed Task 89: MCP Server Implementation.
206
+ Created MCP server with stdio transport and mcp-auth compatible server factory.
207
+ items:
208
+ - ✅ Installed @modelcontextprotocol/sdk (v1.26.0)
209
+ - ✅ Created server-factory.ts with mcp-auth compatible signature
210
+ - ✅ Server factory accepts (accessToken, userId, options) parameters
211
+ - ✅ Registers all 8 MCP tools with list_tools handler
212
+ - ✅ Implements call_tool handler with tool routing
213
+ - ✅ Created server.ts with stdio transport for standalone usage
214
+ - ✅ Updated package.json with bin entry for CLI
215
+ - ✅ Wrote comprehensive unit tests with mocked Firebase client
216
+ - ✅ All 51 tests passing (14 database + 11 client + 18 tools + 8 server)
217
+ - ✅ Server ready for mcp-auth wrapper integration
218
+ - 📋 Next: Task 90 - Build Configuration
219
+
220
+ - date: 2026-02-16
221
+ description: |
222
+ Completed Task 88: Firebase Client Wrapper & MCP Tools Foundation.
223
+ Implemented all 8 core MCP tools with comprehensive test coverage.
224
+ items:
225
+ - ✅ Created 8 MCP tools following Bootstrap Pattern
226
+ - ✅ task_get_status - Get current task status and progress
227
+ - ✅ task_get_next_step - Get instructions for next step
228
+ - ✅ task_update_progress - Update progress percentage
229
+ - ✅ task_complete_task_item - Mark task item complete
230
+ - ✅ task_create_milestone - Create new milestone
231
+ - ✅ task_create_task_item - Create task item in milestone
232
+ - ✅ task_report_completion - Report completion and get next step
233
+ - ✅ task_add_message - Add message to task thread
234
+ - ✅ Created tools index with exports and handler registry
235
+ - ✅ Wrote comprehensive unit tests for all tools
236
+ - ✅ All 43 tests passing (14 database + 11 client + 18 tools)
237
+
238
+ - date: 2026-02-16
239
+ description: |
240
+ Initialized ACP context for task-mcp. Completed comprehensive review of
241
+ all agent documentation, design documents, and source code. All systems
242
+ operational and ready for continued development.
243
+ items:
244
+ - ✅ Checked for ACP updates (v1.3.1, up to date)
245
+ - ✅ Read all 9 agent documentation files
246
+ - ✅ Reviewed 5 key source files (schemas, services, client)
247
+ - ✅ Verified current implementation status
248
+ - ✅ Confirmed Task 88 partially complete (client wrapper done)
249
+ - ✅ All 25 tests passing (14 database + 11 client)
250
+ - ✅ Updated progress.yaml with current status
251
+ - 📋 Proceeded with Task 88 MCP tools implementation
252
+
253
+ - date: 2026-02-16
254
+ description: |
255
+ Revised Milestone 2 task list to match task-mcp MCP server scope.
256
+ Created proper task documents (88-91) for MCP implementation.
257
+ items:
258
+ - ✅ Identified scope mismatch in original Task 88
259
+ - ✅ Revised Task 88: Firebase Client Wrapper & MCP Tools Foundation
260
+ - ✅ Created Task 89: MCP Server Implementation
261
+ - ✅ Created Task 90: Build Configuration
262
+ - ✅ Created Task 91: Deployment Configuration
263
+ - ✅ Updated Milestone 2 document with 6 tasks (was 3)
264
+ - ✅ Clarified architecture: task-mcp provides instructions, tenant executes
265
+ - 📋 Ready to proceed with Task 88 implementation
266
+
267
+ - date: 2026-02-16
268
+ description: |
269
+ Completed Task 87: Task Database Service. Created comprehensive database
270
+ service with CRUD operations, message handling, progress tracking, and
271
+ query methods. All 14 unit tests passing.
272
+ items:
273
+ - ✅ Installed Firebase Admin SDK
274
+ - ✅ Created TaskDatabaseService class with all CRUD methods
275
+ - ✅ Implemented task message operations (add, get, delete)
276
+ - ✅ Implemented progress tracking (milestones, task items)
277
+ - ✅ Added query methods (by status, search by title)
278
+ - ✅ Wrote 14 comprehensive unit tests with mocked Firestore
279
+ - ✅ Created E2E test suite for Firestore emulator
280
+ - ✅ Configured Jest with ESM + TypeScript support
281
+ - ✅ All tests passing (14/14)
282
+
283
+ - date: 2026-02-16
284
+ description: |
285
+ Completed Task 86: Task Data Model and Schemas. Created comprehensive
286
+ Zod schemas, TypeScript interfaces, Firestore security rules, and
287
+ collection path helpers.
288
+ items:
289
+ - ✅ Initialized Node.js project with TypeScript
290
+ - ✅ Created src/schemas/task.ts with complete Zod schemas
291
+ - ✅ Created firestore.rules with user-scoped security
292
+ - ✅ Created src/constant/collections.ts with path helpers
293
+ - ✅ Verified TypeScript compilation (no errors)
294
+ - ✅ Tested Zod validation with valid and invalid data
295
+ - ✅ All tests passed successfully
296
+
297
+ - date: 2026-02-16
298
+ description: |
299
+ Initialized ACP context for task-mcp project. Completed comprehensive
300
+ planning and design phase.
301
+ items:
302
+ - ✅ Read all agent documentation (9 files)
303
+ - ✅ Analyzed design documents and requirements
304
+ - ✅ Reviewed milestone and task structure
305
+ - ✅ Created progress.yaml tracking file
306
+ - ✅ Enhanced code extraction guide with Roo Code paths
307
+
308
+ # Next steps (prioritized list)
309
+ next_steps:
310
+ - Continue with Task 90: Build Configuration
311
+ - Set up esbuild for bundling server and generating type declarations
312
+ - Create build and watch scripts
313
+ - Complete Task 91: Deployment Configuration
314
+ - Create Dockerfile and Cloud Run config
315
+
316
+ # General notes and observations
317
+ notes:
318
+ - Project follows MCP Server Bootstrap Pattern from agent/patterns/bootstrap.md
319
+ - Design is based on porting Roo Code's task execution to MCP server architecture
320
+ - Uses pessimistic execution model (continuous work until paused/complete)
321
+ - MCP server will be separate from agentbase.me codebase for modularity
322
+ - Firebase Admin SDK with service account for direct Firestore access
323
+ - All design documents are comprehensive and implementation-ready
324
+
325
+ # Current blockers (remove when resolved)
326
+ current_blockers: []
327
+
328
+ # Team and contributors
329
+ team:
330
+ - role: Lead Developer
331
+ name: Agent
332
+ focus: |
333
+ Currently in initialization phase. Ready to begin implementation of
334
+ Milestone 2 (MCP Server Foundation).
335
+
336
+ # Dependencies and integrations
337
+ dependencies:
338
+ external_services:
339
+ - name: Firebase/Firestore
340
+ status: pending
341
+ notes: |
342
+ Need Firebase project with Firestore database and service account key
343
+
344
+ - name: AWS Bedrock
345
+ status: pending
346
+ notes: |
347
+ For AI model integration in task execution
348
+
349
+ libraries:
350
+ - name: "@modelcontextprotocol/sdk"
351
+ version: "^1.0.0"
352
+ purpose: |
353
+ MCP protocol implementation for server
354
+
355
+ - name: "firebase-admin"
356
+ version: "latest"
357
+ purpose: |
358
+ Direct Firestore access with service account
359
+
360
+ - name: "zod"
361
+ version: "latest"
362
+ purpose: |
363
+ Schema validation for task data models
364
+
365
+ infrastructure:
366
+ - name: Cloud Run
367
+ status: pending
368
+ notes: |
369
+ Deployment target for MCP server (recommended approach)
370
+
371
+ # Quality metrics
372
+ quality:
373
+ test_coverage: 0
374
+ code_review_status: pending
375
+ documentation_status: complete
@@ -0,0 +1,88 @@
1
+ #!/bin/bash
2
+
3
+ # Agent Context Protocol (ACP) Update Checker
4
+ # This script checks if updates are available for AGENT.md
5
+
6
+ set -e
7
+
8
+ # Colors for output
9
+ RED='\033[0;31m'
10
+ GREEN='\033[0;32m'
11
+ YELLOW='\033[1;33m'
12
+ BLUE='\033[0;34m'
13
+ NC='\033[0m' # No Color
14
+
15
+ # Repository URL
16
+ REPO_URL="https://raw.githubusercontent.com/prmichaelsen/agent-context-protocol/mainline"
17
+ AGENT_MD_URL="$REPO_URL/AGENT.md"
18
+ CHANGELOG_URL="$REPO_URL/CHANGELOG.md"
19
+
20
+ # Silent mode (no output, just exit codes)
21
+ SILENT=false
22
+ if [ "$1" = "--silent" ] || [ "$1" = "-s" ]; then
23
+ SILENT=true
24
+ fi
25
+
26
+ # Check if AGENT.md exists
27
+ if [ ! -f "AGENT.md" ]; then
28
+ if [ "$SILENT" = false ]; then
29
+ echo -e "${RED}Error: AGENT.md not found in current directory${NC}" >&2
30
+ echo "This script should be run from your project root where AGENT.md is located." >&2
31
+ fi
32
+ exit 2
33
+ fi
34
+
35
+ # Download latest AGENT.md for comparison
36
+ if [ "$SILENT" = false ]; then
37
+ echo -e "${BLUE}Checking for updates...${NC}"
38
+ fi
39
+
40
+ if command -v curl &> /dev/null; then
41
+ curl -fsSL "$AGENT_MD_URL" -o /tmp/AGENT.md.latest 2>/dev/null
42
+ elif command -v wget &> /dev/null; then
43
+ wget -q "$AGENT_MD_URL" -O /tmp/AGENT.md.latest 2>/dev/null
44
+ else
45
+ if [ "$SILENT" = false ]; then
46
+ echo -e "${RED}Error: Neither curl nor wget is available${NC}" >&2
47
+ fi
48
+ exit 2
49
+ fi
50
+
51
+ if [ $? -ne 0 ]; then
52
+ if [ "$SILENT" = false ]; then
53
+ echo -e "${RED}Error: Failed to download latest AGENT.md${NC}" >&2
54
+ echo "Please check your internet connection." >&2
55
+ fi
56
+ rm -f /tmp/AGENT.md.latest
57
+ exit 2
58
+ fi
59
+
60
+ # Compare files
61
+ if cmp -s AGENT.md /tmp/AGENT.md.latest; then
62
+ # Files are identical - no updates
63
+ if [ "$SILENT" = false ]; then
64
+ echo -e "${GREEN}✓${NC} Your AGENT.md is up to date!"
65
+ fi
66
+ rm -f /tmp/AGENT.md.latest
67
+ exit 0
68
+ else
69
+ # Files differ - updates available
70
+ if [ "$SILENT" = false ]; then
71
+ echo -e "${YELLOW}⚠${NC} Updates are available for AGENT.md"
72
+ echo ""
73
+
74
+ # Download and display changelog
75
+ echo "Recent changes:"
76
+ echo "---------------"
77
+ if command -v curl &> /dev/null; then
78
+ curl -fsSL "$CHANGELOG_URL" 2>/dev/null | head -n 50
79
+ elif command -v wget &> /dev/null; then
80
+ wget -q "$CHANGELOG_URL" -O - 2>/dev/null | head -n 50
81
+ fi
82
+ echo ""
83
+ echo "To update, run: ./agent/scripts/update.sh"
84
+ echo "Or: curl -fsSL https://raw.githubusercontent.com/prmichaelsen/agent-context-protocol/mainlin./agent/scripts/update.sh | bash"
85
+ fi
86
+ rm -f /tmp/AGENT.md.latest
87
+ exit 1
88
+ fi
@@ -0,0 +1,157 @@
1
+ #!/bin/bash
2
+
3
+ # Agent Context Protocol (ACP) Installation Script
4
+ # This script sets up the ACP directory structure and template files in a project
5
+
6
+ set -e
7
+
8
+ # Colors for output using tput (more reliable than ANSI codes)
9
+ if command -v tput >/dev/null 2>&1 && [ -t 1 ]; then
10
+ RED=$(tput setaf 1)
11
+ GREEN=$(tput setaf 2)
12
+ YELLOW=$(tput setaf 3)
13
+ BLUE=$(tput setaf 4)
14
+ BOLD=$(tput bold)
15
+ NC=$(tput sgr0)
16
+ else
17
+ RED=''
18
+ GREEN=''
19
+ YELLOW=''
20
+ BLUE=''
21
+ BOLD=''
22
+ NC=''
23
+ fi
24
+
25
+ # Repository details
26
+ REPO_URL="https://github.com/prmichaelsen/agent-context-protocol.git"
27
+ BRANCH="mainline"
28
+
29
+ echo "${GREEN}Agent Context Protocol (ACP) Installer${NC}"
30
+ echo "========================================"
31
+ echo ""
32
+
33
+ # Use current directory
34
+ TARGET_DIR="$(pwd)"
35
+
36
+ echo "Installing ACP to: $TARGET_DIR"
37
+ echo ""
38
+
39
+ # Check if agent directory already exists
40
+ if [ -d "$TARGET_DIR/agent" ]; then
41
+ echo "${YELLOW}Note: agent/ directory already exists${NC}"
42
+ echo "All ACP files will be updated to latest versions."
43
+ echo ""
44
+ fi
45
+
46
+ # Create temporary directory
47
+ TEMP_DIR=$(mktemp -d)
48
+ trap "rm -rf $TEMP_DIR" EXIT
49
+
50
+ echo "Cloning ACP repository..."
51
+ if ! git clone --depth 1 --branch "$BRANCH" "$REPO_URL" "$TEMP_DIR" &>/dev/null; then
52
+ echo "${RED}Error: Failed to clone repository${NC}"
53
+ echo "Please check your internet connection and try again."
54
+ exit 1
55
+ fi
56
+
57
+ echo "${GREEN}✓${NC} Repository cloned"
58
+ echo ""
59
+
60
+ # Create directory structure
61
+ echo "Creating directory structure..."
62
+ mkdir -p "$TARGET_DIR/agent/design"
63
+ mkdir -p "$TARGET_DIR/agent/milestones"
64
+ mkdir -p "$TARGET_DIR/agent/patterns"
65
+ mkdir -p "$TARGET_DIR/agent/tasks"
66
+ mkdir -p "$TARGET_DIR/agent/commands"
67
+ mkdir -p "$TARGET_DIR/agent/scripts"
68
+ mkdir -p "$TARGET_DIR/agent/reports"
69
+
70
+ # Create .gitkeep files
71
+ touch "$TARGET_DIR/agent/design/.gitkeep"
72
+ touch "$TARGET_DIR/agent/milestones/.gitkeep"
73
+ touch "$TARGET_DIR/agent/patterns/.gitkeep"
74
+ touch "$TARGET_DIR/agent/tasks/.gitkeep"
75
+
76
+ # Create agent/.gitignore to exclude reports from version control
77
+ cat > "$TARGET_DIR/agent/.gitignore" << 'EOF'
78
+ # Agent Context Protocol - Local Files
79
+ # These files are generated locally and should not be committed
80
+
81
+ # Reports directory - generated by @acp.report command
82
+ reports/
83
+ EOF
84
+
85
+ echo "${GREEN}✓${NC} Directory structure created"
86
+ echo ""
87
+
88
+ # Copy files
89
+ echo "Installing ACP files..."
90
+
91
+ # Copy template files (only .template.md files from these directories)
92
+ find "$TEMP_DIR/agent/design" -maxdepth 1 -name "*.template.md" -exec cp {} "$TARGET_DIR/agent/design/" \;
93
+ find "$TEMP_DIR/agent/milestones" -maxdepth 1 -name "*.template.md" -exec cp {} "$TARGET_DIR/agent/milestones/" \;
94
+ find "$TEMP_DIR/agent/patterns" -maxdepth 1 -name "*.template.md" -exec cp {} "$TARGET_DIR/agent/patterns/" \;
95
+ find "$TEMP_DIR/agent/tasks" -maxdepth 1 -name "*.template.md" -exec cp {} "$TARGET_DIR/agent/tasks/" \;
96
+
97
+ # Copy command template
98
+ cp "$TEMP_DIR/agent/commands/command.template.md" "$TARGET_DIR/agent/commands/"
99
+
100
+ # Copy all command files (flat structure with dot notation)
101
+ # Copies files like acp.init.md, acp.status.md, deploy.production.md, etc.
102
+ if [ -d "$TEMP_DIR/agent/commands" ]; then
103
+ find "$TEMP_DIR/agent/commands" -maxdepth 1 -name "*.*.md" -exec cp {} "$TARGET_DIR/agent/commands/" \;
104
+ fi
105
+
106
+ # Copy progress template
107
+ cp "$TEMP_DIR/agent/progress.template.yaml" "$TARGET_DIR/agent/"
108
+
109
+ # Copy AGENT.md
110
+ cp "$TEMP_DIR/AGENT.md" "$TARGET_DIR/"
111
+
112
+ # Copy scripts
113
+ cp "$TEMP_DIR/agent/scripts/update.sh" "$TARGET_DIR/agent/scripts/"
114
+ cp "$TEMP_DIR/agent/scripts/check-for-updates.sh" "$TARGET_DIR/agent/scripts/"
115
+ cp "$TEMP_DIR/agent/scripts/uninstall.sh" "$TARGET_DIR/agent/scripts/"
116
+ cp "$TEMP_DIR/agent/scripts/version.sh" "$TARGET_DIR/agent/scripts/"
117
+ cp "$TEMP_DIR/agent/scripts/install.sh" "$TARGET_DIR/agent/scripts/"
118
+ chmod +x "$TARGET_DIR/agent/scripts"/*.sh
119
+
120
+ echo "${GREEN}✓${NC} All files installed"
121
+ echo ""
122
+ echo "${GREEN}Installation complete!${NC}"
123
+ echo ""
124
+ echo "${GREEN}Next steps:${NC}"
125
+ echo "1. Create your requirements document:"
126
+ echo " cp agent/design/requirements.template.md agent/design/requirements.md"
127
+ echo ""
128
+ echo "2. Define your first milestone:"
129
+ echo " cp agent/milestones/milestone-1-{title}.template.md agent/milestones/milestone-1-foundation.md"
130
+ echo ""
131
+ echo "3. Initialize progress tracking:"
132
+ echo " cp agent/progress.template.yaml agent/progress.yaml"
133
+ echo ""
134
+ echo "4. Read AGENT.md for complete documentation"
135
+ echo ""
136
+ echo "${BLUE}ACP Commands Available:${NC}"
137
+ echo ""
138
+ echo " ${GREEN}@acp.init${NC} - Initialize agent context (start here!)"
139
+ echo " ${GREEN}@acp.proceed${NC} - Continue with next task"
140
+ echo " ${GREEN}@acp.status${NC} - Display project status"
141
+ echo " ${GREEN}@acp.update${NC} - Update progress tracking"
142
+ echo " ${GREEN}@acp.sync${NC} - Sync documentation with code"
143
+ echo " ${GREEN}@acp.validate${NC} - Validate ACP documents"
144
+ echo " ${GREEN}@acp.report${NC} - Generate project report"
145
+ echo " ${GREEN}@acp.version-check${NC} - Show current ACP version"
146
+ echo " ${GREEN}@acp.version-check-for-updates${NC} - Check for ACP updates"
147
+ echo " ${GREEN}@acp.version-update${NC} - Update ACP to latest version"
148
+ echo " ${GREEN}@acp.package-install${NC} - Install third-party command packages"
149
+ echo ""
150
+ echo "${BLUE}Git Commands Available:${NC}"
151
+ echo ""
152
+ echo " ${GREEN}@git.init${NC} - Initialize git repository with smart .gitignore"
153
+ echo " ${GREEN}@git.commit${NC} - Intelligent version-aware git commit"
154
+ echo ""
155
+ echo "${BLUE}For AI agents:${NC}"
156
+ echo "Type '${GREEN}@acp.init${NC}' to get started."
157
+ echo ""
@@ -0,0 +1,75 @@
1
+ #!/bin/bash
2
+
3
+ # Agent Context Protocol (ACP) Uninstall Script
4
+ # This script removes all ACP files from a project
5
+ # Usage: ./agent/scripts/uninstall.sh [-y]
6
+
7
+ set -e
8
+
9
+ # Colors for output
10
+ RED='\033[0;31m'
11
+ GREEN='\033[0;32m'
12
+ YELLOW='\033[1;33m'
13
+ BLUE='\033[0;34m'
14
+ NC='\033[0m' # No Color
15
+
16
+ # Check for -y flag
17
+ AUTO_CONFIRM=false
18
+ if [ "$1" = "-y" ]; then
19
+ AUTO_CONFIRM=true
20
+ fi
21
+
22
+ echo -e "${YELLOW}Agent Context Protocol (ACP) Uninstall${NC}"
23
+ echo "======================================"
24
+ echo ""
25
+
26
+ # Check if agent directory exists
27
+ if [ ! -d "agent" ] && [ ! -f "AGENT.md" ]; then
28
+ echo -e "${YELLOW}No ACP files found in current directory${NC}"
29
+ exit 0
30
+ fi
31
+
32
+ # If not auto-confirmed, show instructions for agents
33
+ if [ "$AUTO_CONFIRM" = false ]; then
34
+ echo -e "${BLUE}Note for AI Agents:${NC}"
35
+ echo "This script requires user confirmation to prevent accidental deletion."
36
+ echo "Please ask the user: 'Do you want to uninstall ACP from this project?'"
37
+ echo "If yes, rerun this script with: ./agent/scripts/uninstall.sh -y"
38
+ echo ""
39
+ echo -e "${RED}WARNING: This will permanently delete:${NC}"
40
+ echo " - agent/ directory (all contents)"
41
+ echo " - AGENT.md file"
42
+ echo ""
43
+ echo "Make sure you have committed any important changes to git."
44
+ echo ""
45
+
46
+ read -p "Are you sure you want to remove all ACP files? (y/N) " -n 1 -r
47
+ echo
48
+
49
+ if [[ ! $REPLY =~ ^[Yy]$ ]]; then
50
+ echo "Uninstall cancelled. No files were deleted."
51
+ exit 0
52
+ fi
53
+ fi
54
+
55
+ echo ""
56
+ echo "Removing ACP files..."
57
+
58
+ # Remove agent directory
59
+ if [ -d "agent" ]; then
60
+ rm -rf agent
61
+ echo -e "${GREEN}✓${NC} Removed agent/ directory"
62
+ fi
63
+
64
+ # Remove AGENT.md
65
+ if [ -f "AGENT.md" ]; then
66
+ rm -f AGENT.md
67
+ echo -e "${GREEN}✓${NC} Removed AGENT.md"
68
+ fi
69
+
70
+ echo ""
71
+ echo -e "${GREEN}Uninstall complete!${NC}"
72
+ echo ""
73
+ echo "All ACP files have been removed from this project."
74
+ echo "Use 'git status' to see what was deleted."
75
+ echo ""