agileflow 3.3.0 → 3.4.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.
- package/CHANGELOG.md +10 -0
- package/README.md +6 -6
- package/lib/skill-loader.js +0 -1
- package/package.json +1 -1
- package/scripts/agileflow-statusline.sh +81 -0
- package/scripts/agileflow-welcome.js +79 -0
- package/scripts/claude-tmux.sh +90 -23
- package/scripts/claude-watchdog.sh +225 -0
- package/scripts/generators/agent-registry.js +14 -1
- package/scripts/generators/inject-babysit.js +22 -9
- package/scripts/generators/inject-help.js +19 -9
- package/scripts/lib/ac-test-matcher.js +452 -0
- package/scripts/lib/audit-cleanup.js +250 -0
- package/scripts/lib/audit-registry.js +304 -0
- package/scripts/lib/configure-features.js +35 -0
- package/scripts/lib/feature-catalog.js +3 -3
- package/scripts/lib/gate-enforcer.js +295 -0
- package/scripts/lib/model-profiles.js +118 -0
- package/scripts/lib/quality-gates.js +163 -0
- package/scripts/lib/signal-detectors.js +44 -1
- package/scripts/lib/skill-catalog.js +557 -0
- package/scripts/lib/skill-recommender.js +311 -0
- package/scripts/lib/status-writer.js +255 -0
- package/scripts/lib/story-claiming.js +128 -45
- package/scripts/lib/task-sync.js +32 -38
- package/scripts/lib/tdd-phase-manager.js +455 -0
- package/scripts/lib/team-events.js +34 -3
- package/scripts/lib/tmux-audit-monitor.js +611 -0
- package/scripts/lib/tmux-group-colors.js +113 -0
- package/scripts/lib/tool-registry.yaml +241 -0
- package/scripts/lib/tool-shed.js +441 -0
- package/scripts/messaging-bridge.js +209 -1
- package/scripts/native-team-observer.js +219 -0
- package/scripts/obtain-context.js +14 -0
- package/scripts/ralph-loop.js +30 -5
- package/scripts/smart-detect.js +21 -0
- package/scripts/spawn-audit-sessions.js +877 -0
- package/scripts/team-manager.js +56 -16
- package/scripts/tmux-close-windows.sh +180 -0
- package/src/core/agents/a11y-analyzer-aria.md +155 -0
- package/src/core/agents/a11y-analyzer-forms.md +162 -0
- package/src/core/agents/a11y-analyzer-keyboard.md +175 -0
- package/src/core/agents/a11y-analyzer-semantic.md +153 -0
- package/src/core/agents/a11y-analyzer-visual.md +158 -0
- package/src/core/agents/a11y-consensus.md +248 -0
- package/src/core/agents/ads-audit-budget.md +181 -0
- package/src/core/agents/ads-audit-compliance.md +169 -0
- package/src/core/agents/ads-audit-creative.md +164 -0
- package/src/core/agents/ads-audit-google.md +226 -0
- package/src/core/agents/ads-audit-meta.md +183 -0
- package/src/core/agents/ads-audit-tracking.md +197 -0
- package/src/core/agents/ads-consensus.md +396 -0
- package/src/core/agents/ads-generate.md +145 -0
- package/src/core/agents/ads-performance-tracker.md +197 -0
- package/src/core/agents/api-quality-analyzer-conventions.md +148 -0
- package/src/core/agents/api-quality-analyzer-docs.md +176 -0
- package/src/core/agents/api-quality-analyzer-errors.md +183 -0
- package/src/core/agents/api-quality-analyzer-pagination.md +171 -0
- package/src/core/agents/api-quality-analyzer-versioning.md +143 -0
- package/src/core/agents/api-quality-consensus.md +214 -0
- package/src/core/agents/arch-analyzer-circular.md +148 -0
- package/src/core/agents/arch-analyzer-complexity.md +171 -0
- package/src/core/agents/arch-analyzer-coupling.md +146 -0
- package/src/core/agents/arch-analyzer-layering.md +151 -0
- package/src/core/agents/arch-analyzer-patterns.md +162 -0
- package/src/core/agents/arch-consensus.md +227 -0
- package/src/core/agents/brainstorm-analyzer-features.md +169 -0
- package/src/core/agents/brainstorm-analyzer-growth.md +161 -0
- package/src/core/agents/brainstorm-analyzer-integration.md +172 -0
- package/src/core/agents/brainstorm-analyzer-market.md +147 -0
- package/src/core/agents/brainstorm-analyzer-ux.md +167 -0
- package/src/core/agents/brainstorm-consensus.md +237 -0
- package/src/core/agents/completeness-consensus.md +5 -5
- package/src/core/agents/perf-consensus.md +2 -2
- package/src/core/agents/security-consensus.md +2 -2
- package/src/core/agents/seo-analyzer-content.md +167 -0
- package/src/core/agents/seo-analyzer-images.md +187 -0
- package/src/core/agents/seo-analyzer-performance.md +206 -0
- package/src/core/agents/seo-analyzer-schema.md +176 -0
- package/src/core/agents/seo-analyzer-sitemap.md +172 -0
- package/src/core/agents/seo-analyzer-technical.md +144 -0
- package/src/core/agents/seo-consensus.md +289 -0
- package/src/core/agents/test-consensus.md +2 -2
- package/src/core/commands/adr.md +1 -0
- package/src/core/commands/ads/audit.md +375 -0
- package/src/core/commands/ads/budget.md +97 -0
- package/src/core/commands/ads/competitor.md +112 -0
- package/src/core/commands/ads/creative.md +85 -0
- package/src/core/commands/ads/generate.md +238 -0
- package/src/core/commands/ads/google.md +112 -0
- package/src/core/commands/ads/health.md +327 -0
- package/src/core/commands/ads/landing.md +119 -0
- package/src/core/commands/ads/linkedin.md +112 -0
- package/src/core/commands/ads/meta.md +91 -0
- package/src/core/commands/ads/microsoft.md +115 -0
- package/src/core/commands/ads/plan.md +321 -0
- package/src/core/commands/ads/test-plan.md +317 -0
- package/src/core/commands/ads/tiktok.md +129 -0
- package/src/core/commands/ads/track.md +288 -0
- package/src/core/commands/ads/youtube.md +124 -0
- package/src/core/commands/ads.md +140 -0
- package/src/core/commands/assign.md +1 -0
- package/src/core/commands/audit.md +43 -6
- package/src/core/commands/babysit.md +315 -1266
- package/src/core/commands/baseline.md +1 -0
- package/src/core/commands/blockers.md +1 -0
- package/src/core/commands/board.md +1 -0
- package/src/core/commands/changelog.md +1 -0
- package/src/core/commands/choose.md +1 -0
- package/src/core/commands/ci.md +1 -0
- package/src/core/commands/code/accessibility.md +347 -0
- package/src/core/commands/code/api.md +297 -0
- package/src/core/commands/code/architecture.md +297 -0
- package/src/core/commands/{audit → code}/completeness.md +72 -25
- package/src/core/commands/{audit → code}/legal.md +63 -16
- package/src/core/commands/{audit → code}/logic.md +64 -16
- package/src/core/commands/{audit → code}/performance.md +67 -20
- package/src/core/commands/{audit → code}/security.md +69 -19
- package/src/core/commands/{audit → code}/test.md +67 -20
- package/src/core/commands/configure.md +1 -0
- package/src/core/commands/council.md +1 -0
- package/src/core/commands/deploy.md +1 -0
- package/src/core/commands/diagnose.md +1 -0
- package/src/core/commands/docs.md +1 -0
- package/src/core/commands/epic/edit.md +213 -0
- package/src/core/commands/epic.md +1 -0
- package/src/core/commands/export.md +238 -0
- package/src/core/commands/help.md +16 -1
- package/src/core/commands/{discovery → ideate}/brief.md +12 -12
- package/src/core/commands/{discovery/new.md → ideate/discover.md} +20 -16
- package/src/core/commands/ideate/features.md +496 -0
- package/src/core/commands/ideate/new.md +158 -124
- package/src/core/commands/impact.md +1 -0
- package/src/core/commands/learn/explain.md +118 -0
- package/src/core/commands/learn/glossary.md +135 -0
- package/src/core/commands/learn/patterns.md +138 -0
- package/src/core/commands/learn/tour.md +126 -0
- package/src/core/commands/migrate/codemods.md +151 -0
- package/src/core/commands/migrate/plan.md +131 -0
- package/src/core/commands/migrate/scan.md +114 -0
- package/src/core/commands/migrate/validate.md +119 -0
- package/src/core/commands/multi-expert.md +1 -0
- package/src/core/commands/pr.md +1 -0
- package/src/core/commands/review.md +1 -0
- package/src/core/commands/seo/audit.md +373 -0
- package/src/core/commands/seo/competitor.md +174 -0
- package/src/core/commands/seo/content.md +107 -0
- package/src/core/commands/seo/geo.md +229 -0
- package/src/core/commands/seo/hreflang.md +140 -0
- package/src/core/commands/seo/images.md +96 -0
- package/src/core/commands/seo/page.md +198 -0
- package/src/core/commands/seo/plan.md +163 -0
- package/src/core/commands/seo/programmatic.md +131 -0
- package/src/core/commands/seo/references/cwv-thresholds.md +64 -0
- package/src/core/commands/seo/references/eeat-framework.md +110 -0
- package/src/core/commands/seo/references/quality-gates.md +91 -0
- package/src/core/commands/seo/references/schema-types.md +102 -0
- package/src/core/commands/seo/schema.md +183 -0
- package/src/core/commands/seo/sitemap.md +97 -0
- package/src/core/commands/seo/technical.md +100 -0
- package/src/core/commands/seo.md +107 -0
- package/src/core/commands/skill/list.md +68 -212
- package/src/core/commands/skill/recommend.md +216 -0
- package/src/core/commands/sprint.md +1 -0
- package/src/core/commands/status/undo.md +191 -0
- package/src/core/commands/status.md +1 -0
- package/src/core/commands/story/edit.md +204 -0
- package/src/core/commands/story/view.md +29 -7
- package/src/core/commands/story-validate.md +1 -0
- package/src/core/commands/story.md +1 -0
- package/src/core/commands/tdd-next.md +238 -0
- package/src/core/commands/tdd.md +211 -0
- package/src/core/commands/team/start.md +10 -6
- package/src/core/commands/tests.md +1 -0
- package/src/core/commands/verify.md +27 -1
- package/src/core/commands/workflow.md +2 -0
- package/src/core/experts/_core-expertise.yaml +105 -0
- package/src/core/experts/analytics/expertise.yaml +5 -99
- package/src/core/experts/codebase-query/expertise.yaml +3 -72
- package/src/core/experts/compliance/expertise.yaml +6 -72
- package/src/core/experts/database/expertise.yaml +9 -52
- package/src/core/experts/documentation/expertise.yaml +7 -140
- package/src/core/experts/integrations/expertise.yaml +7 -127
- package/src/core/experts/mentor/expertise.yaml +8 -35
- package/src/core/experts/monitoring/expertise.yaml +7 -49
- package/src/core/experts/performance/expertise.yaml +1 -26
- package/src/core/experts/security/expertise.yaml +9 -34
- package/src/core/experts/ui/expertise.yaml +6 -36
- package/src/core/knowledge/ads/ad-audit-checklist-scoring.md +424 -0
- package/src/core/knowledge/ads/ad-optimization-logic.md +590 -0
- package/src/core/knowledge/ads/ad-technical-specifications.md +385 -0
- package/src/core/knowledge/ads/definitive-advertising-reference-2026.md +506 -0
- package/src/core/knowledge/ads/paid-advertising-research-2026.md +445 -0
- package/src/core/teams/backend.json +41 -0
- package/src/core/teams/frontend.json +41 -0
- package/src/core/teams/qa.json +41 -0
- package/src/core/teams/solo.json +35 -0
- package/src/core/templates/agileflow-metadata.json +20 -1
- package/tools/cli/commands/setup.js +85 -3
- package/tools/cli/commands/update.js +42 -0
- package/tools/cli/installers/ide/_base-ide.js +42 -5
- package/tools/cli/installers/ide/claude-code.js +71 -3
- package/tools/cli/lib/content-injector.js +160 -12
- package/tools/cli/lib/docs-setup.js +1 -1
- package/src/core/commands/skill/create.md +0 -698
- package/src/core/commands/skill/delete.md +0 -316
- package/src/core/commands/skill/edit.md +0 -359
- package/src/core/commands/skill/test.md +0 -394
- package/src/core/commands/skill/upgrade.md +0 -552
- package/src/core/templates/skill-template.md +0 -117
|
@@ -108,106 +108,12 @@ conventions:
|
|
|
108
108
|
- "Document all events in event catalog"
|
|
109
109
|
- "Test tracking in development before production"
|
|
110
110
|
|
|
111
|
-
|
|
112
|
-
navigation:
|
|
113
|
-
- page_viewed
|
|
114
|
-
- navigation_clicked
|
|
115
|
-
- back_clicked
|
|
116
|
-
- search_performed
|
|
117
|
-
|
|
118
|
-
user_actions:
|
|
119
|
-
- button_clicked
|
|
120
|
-
- form_submitted
|
|
121
|
-
- feature_used
|
|
122
|
-
- content_shared
|
|
123
|
-
|
|
124
|
-
conversions:
|
|
125
|
-
- signup_started
|
|
126
|
-
- signup_completed
|
|
127
|
-
- trial_started
|
|
128
|
-
- purchase_completed
|
|
129
|
-
- upgrade_clicked
|
|
130
|
-
|
|
131
|
-
engagement:
|
|
132
|
-
- content_viewed
|
|
133
|
-
- video_played
|
|
134
|
-
- comment_added
|
|
135
|
-
- reaction_added
|
|
136
|
-
|
|
137
|
-
errors:
|
|
138
|
-
- error_occurred
|
|
139
|
-
- api_failed
|
|
140
|
-
- validation_failed
|
|
141
|
-
|
|
142
|
-
key_metrics:
|
|
143
|
-
acquisition:
|
|
144
|
-
- daily_signups
|
|
145
|
-
- signup_conversion_rate
|
|
146
|
-
- acquisition_source
|
|
147
|
-
|
|
148
|
-
engagement:
|
|
149
|
-
- daily_active_users
|
|
150
|
-
- monthly_active_users
|
|
151
|
-
- session_duration
|
|
152
|
-
- feature_adoption_rate
|
|
153
|
-
|
|
154
|
-
retention:
|
|
155
|
-
- day_1_retention
|
|
156
|
-
- day_7_retention
|
|
157
|
-
- day_30_retention
|
|
158
|
-
- churn_rate
|
|
159
|
-
|
|
160
|
-
revenue:
|
|
161
|
-
- monthly_recurring_revenue
|
|
162
|
-
- average_revenue_per_user
|
|
163
|
-
- lifetime_value
|
|
164
|
-
|
|
165
|
-
# Learnings are AUTO-UPDATED by self-improve.md
|
|
166
|
-
# Do not edit manually - let the agent learn from experience
|
|
111
|
+
# Learnings (trimmed - keep 2 most actionable)
|
|
167
112
|
learnings:
|
|
168
113
|
- date: 2025-12-21
|
|
169
|
-
context:
|
|
170
|
-
|
|
171
|
-
AgileFlow tracks expertise system metrics via scripts/expertise-metrics.sh script.
|
|
172
|
-
This script analyzes all expert expertise.yaml files to generate health metrics:
|
|
173
|
-
- Total number of experts
|
|
174
|
-
- Experts with learnings vs without
|
|
175
|
-
- Average learnings per expert
|
|
176
|
-
- Most active experts (by learning count)
|
|
177
|
-
- Stale experts (not updated recently)
|
|
178
|
-
Use this pattern for analyzing distributed knowledge across multiple expertise files.
|
|
179
|
-
|
|
180
|
-
- date: 2025-12-21
|
|
181
|
-
context: Validation script health metrics
|
|
182
|
-
learning: |
|
|
183
|
-
AgileFlow validation scripts (scripts/validate-*.sh) provide structured health metrics
|
|
184
|
-
with PASS/WARN/FAIL counts. Key patterns:
|
|
185
|
-
- Each validation script outputs structured results (not just exit codes)
|
|
186
|
-
- Metrics include: total checks, passed, warnings, failures
|
|
187
|
-
- validate-all.sh aggregates metrics from individual validators
|
|
188
|
-
- Health dashboard can be built by parsing validation output
|
|
189
|
-
This pattern enables tracking system health trends over time.
|
|
190
|
-
|
|
191
|
-
- date: 2025-12-21
|
|
192
|
-
context: Story completion metrics from status.json
|
|
193
|
-
learning: |
|
|
194
|
-
AgileFlow tracks project progress via docs/09-agents/status.json.
|
|
195
|
-
Key metrics available:
|
|
196
|
-
- Total stories vs completed stories (completion percentage)
|
|
197
|
-
- Stories by status: backlog, in_progress, blocked, completed
|
|
198
|
-
- WIP (work in progress) count
|
|
199
|
-
- Stories by epic (epic-level progress)
|
|
200
|
-
- Average story age (time in current status)
|
|
201
|
-
Parse status.json to generate project health dashboards and velocity metrics.
|
|
114
|
+
context: "Expertise metrics"
|
|
115
|
+
insight: "scripts/expertise-metrics.sh analyzes expertise.yaml files for health: total experts, learnings count, staleness distribution"
|
|
202
116
|
|
|
203
117
|
- date: 2025-12-21
|
|
204
|
-
context:
|
|
205
|
-
|
|
206
|
-
AgileFlow tracks agent activity in docs/09-agents/bus/log.jsonl (append-only).
|
|
207
|
-
Each line is a JSON object with: timestamp, agent, action, metadata.
|
|
208
|
-
Key patterns:
|
|
209
|
-
- Append-only format (never edit existing lines)
|
|
210
|
-
- Parse line-by-line to analyze agent activity patterns
|
|
211
|
-
- Track agent invocation frequency, success rates, common errors
|
|
212
|
-
- Identify most active agents and underutilized agents
|
|
213
|
-
Use this for agent performance analytics and optimization insights.
|
|
118
|
+
context: "Story metrics from status.json"
|
|
119
|
+
insight: "Parse status.json for: completion %, stories by status/epic, WIP count, average story age"
|
|
@@ -89,79 +89,10 @@ query_types:
|
|
|
89
89
|
- input: "utils dependencies"
|
|
90
90
|
translation: '--deps="src/lib/utils.js"'
|
|
91
91
|
|
|
92
|
-
#
|
|
93
|
-
|
|
94
|
-
api:
|
|
95
|
-
patterns: ["/api/", "/routes/", "/endpoints/", "/controllers/"]
|
|
96
|
-
description: "API endpoints and routes"
|
|
97
|
-
ui:
|
|
98
|
-
patterns: ["/components/", "/ui/", "/views/", "/pages/"]
|
|
99
|
-
description: "UI components and views"
|
|
100
|
-
database:
|
|
101
|
-
patterns: ["/db/", "/database/", "/models/", "/schema/", "/migrations/"]
|
|
102
|
-
description: "Database models and migrations"
|
|
103
|
-
auth:
|
|
104
|
-
patterns: ["/auth/", "/login/", "/session/", "/jwt/", "/oauth/"]
|
|
105
|
-
description: "Authentication logic"
|
|
106
|
-
test:
|
|
107
|
-
patterns: ["/test/", "/tests/", "/__tests__/", "/spec/", "/specs/"]
|
|
108
|
-
description: "Test files"
|
|
109
|
-
config:
|
|
110
|
-
patterns: ["/config/", "/settings/", "/env/"]
|
|
111
|
-
description: "Configuration files"
|
|
112
|
-
lib:
|
|
113
|
-
patterns: ["/lib/", "/utils/", "/helpers/", "/shared/"]
|
|
114
|
-
description: "Utility libraries"
|
|
115
|
-
docs:
|
|
116
|
-
patterns: ["/docs/", "/documentation/"]
|
|
117
|
-
description: "Documentation files"
|
|
118
|
-
scripts:
|
|
119
|
-
patterns: ["/scripts/", "/bin/", "/tools/"]
|
|
120
|
-
description: "Build and utility scripts"
|
|
121
|
-
types:
|
|
122
|
-
patterns: ["/types/", "/typings/", "/interfaces/"]
|
|
123
|
-
description: "Type definitions"
|
|
92
|
+
# 10 auto-detected tags: api, ui, database, auth, test, config, lib, docs, scripts, types
|
|
93
|
+
# Tag patterns defined in codebase-indexer.js:TAG_PATTERNS
|
|
124
94
|
|
|
125
|
-
#
|
|
126
|
-
nl_patterns:
|
|
127
|
-
- pattern: "where is * defined"
|
|
128
|
-
query_type: export
|
|
129
|
-
extraction: "symbol from *"
|
|
130
|
-
- pattern: "what files use *"
|
|
131
|
-
query_type: export
|
|
132
|
-
extraction: "symbol from *"
|
|
133
|
-
- pattern: "* files"
|
|
134
|
-
query_type: query
|
|
135
|
-
extraction: "keyword from *"
|
|
136
|
-
- pattern: "files with *"
|
|
137
|
-
query_type: content
|
|
138
|
-
extraction: "regex from *"
|
|
139
|
-
- pattern: "* in the codebase"
|
|
140
|
-
query_type: query
|
|
141
|
-
extraction: "keyword from *"
|
|
142
|
-
- pattern: "dependencies of *"
|
|
143
|
-
query_type: deps
|
|
144
|
-
extraction: "file path from *"
|
|
145
|
-
- pattern: "what depends on *"
|
|
146
|
-
query_type: deps
|
|
147
|
-
extraction: "file path from *"
|
|
148
|
-
|
|
149
|
-
# Fallback strategies
|
|
150
|
-
fallbacks:
|
|
151
|
-
index_unavailable:
|
|
152
|
-
description: "When index cannot be built or is corrupted"
|
|
153
|
-
strategy:
|
|
154
|
-
- "Use Glob tool for file pattern matching"
|
|
155
|
-
- "Use Grep tool for content searching"
|
|
156
|
-
- "Combine results manually"
|
|
157
|
-
|
|
158
|
-
no_results:
|
|
159
|
-
description: "When query returns no matches"
|
|
160
|
-
strategy:
|
|
161
|
-
- "Try broader search terms"
|
|
162
|
-
- "Check for typos in symbol names"
|
|
163
|
-
- "Try content search instead of export search"
|
|
164
|
-
- "Suggest related tags"
|
|
95
|
+
# NL patterns and fallback strategies handled by agent prompt (omitted for brevity)
|
|
165
96
|
|
|
166
97
|
# Conventions
|
|
167
98
|
conventions:
|
|
@@ -88,80 +88,14 @@ conventions:
|
|
|
88
88
|
- "Compliance cannot be compromised for convenience"
|
|
89
89
|
- "Annual compliance audits required"
|
|
90
90
|
|
|
91
|
-
|
|
92
|
-
gdpr:
|
|
93
|
-
scope: "EU personal data"
|
|
94
|
-
requirements:
|
|
95
|
-
- "Explicit consent for processing"
|
|
96
|
-
- "Right to access, rectification, deletion"
|
|
97
|
-
- "Data portability"
|
|
98
|
-
- "72-hour breach notification"
|
|
99
|
-
- "Data Protection Impact Assessment"
|
|
91
|
+
# Regulations: GDPR, CCPA, HIPAA, SOC2, PCI-DSS (models know details - omitted)
|
|
100
92
|
|
|
101
|
-
|
|
102
|
-
scope: "California residents"
|
|
103
|
-
requirements:
|
|
104
|
-
- "Right to know what data collected"
|
|
105
|
-
- "Right to deletion"
|
|
106
|
-
- "Right to opt-out of sale"
|
|
107
|
-
- "Non-discrimination"
|
|
108
|
-
|
|
109
|
-
hipaa:
|
|
110
|
-
scope: "Protected Health Information (PHI)"
|
|
111
|
-
requirements:
|
|
112
|
-
- "Access controls"
|
|
113
|
-
- "Audit trails"
|
|
114
|
-
- "Encryption"
|
|
115
|
-
- "Business Associate Agreements"
|
|
116
|
-
|
|
117
|
-
soc2:
|
|
118
|
-
scope: "Service organizations"
|
|
119
|
-
requirements:
|
|
120
|
-
- "Security controls"
|
|
121
|
-
- "Availability"
|
|
122
|
-
- "Processing integrity"
|
|
123
|
-
- "Confidentiality"
|
|
124
|
-
- "Privacy"
|
|
125
|
-
|
|
126
|
-
pci_dss:
|
|
127
|
-
scope: "Payment card data"
|
|
128
|
-
requirements:
|
|
129
|
-
- "Network security"
|
|
130
|
-
- "Cardholder data protection"
|
|
131
|
-
- "Vulnerability management"
|
|
132
|
-
- "Access control"
|
|
133
|
-
- "Monitoring and testing"
|
|
134
|
-
|
|
135
|
-
# Learnings are AUTO-UPDATED by self-improve.md
|
|
93
|
+
# Learnings (trimmed - keep 2 most actionable)
|
|
136
94
|
learnings:
|
|
137
95
|
- date: 2025-12-21
|
|
138
|
-
context:
|
|
139
|
-
|
|
140
|
-
NO AI attribution in commits. CLAUDE.md explicitly forbids AI footers,
|
|
141
|
-
Co-Authored-By for AI, emoji robots, or any AI mentions in commit messages.
|
|
142
|
-
Commits must be clean conventional format (feat/fix/chore/docs).
|
|
143
|
-
This is a compliance requirement to maintain professional git history.
|
|
144
|
-
|
|
145
|
-
- date: 2025-12-21
|
|
146
|
-
context: AgileFlow secrets management
|
|
147
|
-
learning: |
|
|
148
|
-
Gitignored sensitive files include: .npmrc (npm token), .mcp.json (MCP secrets),
|
|
149
|
-
and CLAUDE.md (internal dev docs). NPM_TOKEN is stored in GitHub Secrets at
|
|
150
|
-
https://github.com/projectquestorg/AgileFlow/settings/secrets/actions and NEVER
|
|
151
|
-
committed to repository. This follows security best practices for credential storage.
|
|
152
|
-
|
|
153
|
-
- date: 2025-12-21
|
|
154
|
-
context: AgileFlow audit trail
|
|
155
|
-
learning: |
|
|
156
|
-
ADRs in docs/03-decisions/ document architecture decisions for audit trails.
|
|
157
|
-
status.json in docs/09-agents/ provides complete story tracking history with
|
|
158
|
-
timestamps, status changes, and agent communications. This creates immutable
|
|
159
|
-
audit trail of all project decisions and work progress.
|
|
96
|
+
context: "Commit and secrets policy"
|
|
97
|
+
insight: "NO AI attribution in commits (clean conventional format). Secrets: .npmrc, CLAUDE.md gitignored. NPM_TOKEN in GitHub Secrets only."
|
|
160
98
|
|
|
161
99
|
- date: 2025-12-21
|
|
162
|
-
context:
|
|
163
|
-
|
|
164
|
-
Auto-archival system (scripts/archive-completed-stories.sh) automatically moves
|
|
165
|
-
completed stories older than 7 days to docs/09-agents/archive/YYYY-MM.json.
|
|
166
|
-
This implements data retention policy while keeping status.json lean. Archives
|
|
167
|
-
organized by month for compliance audits and historical retrieval.
|
|
100
|
+
context: "Audit trail and retention"
|
|
101
|
+
insight: "ADRs in docs/03-decisions/, story tracking in status.json. Auto-archival moves completed stories >7 days to archive/YYYY-MM.json."
|
|
@@ -74,30 +74,7 @@ relationships:
|
|
|
74
74
|
|
|
75
75
|
# Database patterns the expert should recognize and follow
|
|
76
76
|
patterns:
|
|
77
|
-
-
|
|
78
|
-
description: "Use deleted_at timestamp instead of hard DELETE"
|
|
79
|
-
location: Tables with user data
|
|
80
|
-
applies_to: [users, posts, comments]
|
|
81
|
-
|
|
82
|
-
- name: "Timestamps"
|
|
83
|
-
description: "All tables have created_at and updated_at"
|
|
84
|
-
location: Every table
|
|
85
|
-
convention: "Auto-managed by ORM or triggers"
|
|
86
|
-
|
|
87
|
-
- name: "UUID primary keys"
|
|
88
|
-
description: "Use UUIDs instead of auto-increment for distributed systems"
|
|
89
|
-
location: Primary key columns
|
|
90
|
-
alternative: "Auto-increment for simpler setups"
|
|
91
|
-
|
|
92
|
-
- name: "Foreign key naming"
|
|
93
|
-
description: "Foreign keys follow <table_singular>_id pattern"
|
|
94
|
-
location: All relationship columns
|
|
95
|
-
example: "user_id, post_id, category_id"
|
|
96
|
-
|
|
97
|
-
- name: "Index naming"
|
|
98
|
-
description: "Indexes follow idx_<table>_<columns> pattern"
|
|
99
|
-
location: Index definitions
|
|
100
|
-
example: "idx_users_email, idx_posts_user_id_created_at"
|
|
77
|
+
# Generic SQL patterns (soft deletes, timestamps, UUID, FK/index naming) omitted - models know these
|
|
101
78
|
|
|
102
79
|
- name: "JSON Single Source of Truth"
|
|
103
80
|
description: "AgileFlow uses status.json as primary data store"
|
|
@@ -114,39 +91,19 @@ patterns:
|
|
|
114
91
|
location: docs/09-agents/archive/YYYY-MM.json
|
|
115
92
|
script: scripts/archive-completed-stories.sh
|
|
116
93
|
|
|
117
|
-
# Conventions
|
|
94
|
+
# Conventions (AgileFlow-specific only; generic SQL conventions omitted)
|
|
118
95
|
conventions:
|
|
119
|
-
- "Tables: lowercase, plural (users, posts, categories)"
|
|
120
|
-
- "Columns: lowercase, snake_case (first_name, created_at)"
|
|
121
|
-
- "Foreign keys: <table_singular>_id (user_id, post_id)"
|
|
122
|
-
- "Required columns: id, created_at, updated_at"
|
|
123
|
-
- "Soft delete column: deleted_at (nullable timestamp)"
|
|
124
|
-
- "All queries use parameterized statements (prevent SQL injection)"
|
|
125
|
-
- "Transactions for multi-table operations"
|
|
126
|
-
- "Migrations must be reversible (up and down)"
|
|
127
|
-
- "No SELECT * in production code"
|
|
128
|
-
- "Index columns used in WHERE, JOIN, ORDER BY"
|
|
129
96
|
- "JSON stores: always update 'updated' timestamp when modifying"
|
|
130
97
|
- "JSON Lines: append only, never modify existing lines"
|
|
98
|
+
- "All queries use parameterized statements (prevent SQL injection)"
|
|
99
|
+
- "Migrations must be reversible (up and down)"
|
|
131
100
|
|
|
132
|
-
#
|
|
101
|
+
# Learnings (trimmed - keep 2 most actionable)
|
|
133
102
|
learnings:
|
|
134
103
|
- date: 2025-12-21
|
|
135
|
-
context: "
|
|
136
|
-
insight: "
|
|
137
|
-
source: "docs/09-agents/"
|
|
138
|
-
|
|
139
|
-
- date: 2025-12-21
|
|
140
|
-
context: "Analyzed status.json schema"
|
|
141
|
-
insight: "Two main collections: epics (EP-ID keys) and stories (US-ID keys); stories have owner, status, priority, estimate, depends_on, test_status"
|
|
142
|
-
source: "docs/09-agents/status.json"
|
|
143
|
-
|
|
144
|
-
- date: 2025-12-21
|
|
145
|
-
context: "Analyzed archival pattern"
|
|
146
|
-
insight: "scripts/archive-completed-stories.sh moves done stories >7 days old to archive/YYYY-MM.json to keep status.json performant"
|
|
147
|
-
source: "scripts/archive-completed-stories.sh, CLAUDE.md"
|
|
104
|
+
context: "AgileFlow data storage"
|
|
105
|
+
insight: "JSON files not SQL: status.json (epics EP-ID, stories US-ID with owner/status/priority/estimate/depends_on/test_status), log.jsonl (coordination), archive/ (historical)"
|
|
148
106
|
|
|
149
107
|
- date: 2025-12-21
|
|
150
|
-
context: "
|
|
151
|
-
insight: "
|
|
152
|
-
source: "docs/09-agents/bus/log.jsonl"
|
|
108
|
+
context: "Archival pattern"
|
|
109
|
+
insight: "archive-completed-stories.sh moves done stories >7 days to archive/YYYY-MM.json. Keeps status.json performant."
|
|
@@ -111,149 +111,16 @@ conventions:
|
|
|
111
111
|
- "Each folder should have README.md explaining its purpose"
|
|
112
112
|
- "NO AI attribution in commits or documentation (see CLAUDE.md)"
|
|
113
113
|
|
|
114
|
-
#
|
|
114
|
+
# Learnings (trimmed - keep 3 most actionable)
|
|
115
115
|
learnings:
|
|
116
|
-
- date: "2026-01-01"
|
|
117
|
-
auto_generated: true
|
|
118
|
-
context: "Test learning"
|
|
119
|
-
insight: "This is a test"
|
|
120
116
|
- date: 2025-12-21
|
|
121
|
-
context: "
|
|
122
|
-
insight: "10 numbered directories (00-meta through 10-research)
|
|
123
|
-
source: "docs/"
|
|
124
|
-
|
|
125
|
-
- date: 2025-12-21
|
|
126
|
-
context: "Analyzed README structure"
|
|
127
|
-
insight: "Main README is 537 lines with collapsible sections; uses badges for quick stats"
|
|
128
|
-
source: "README.md"
|
|
129
|
-
|
|
130
|
-
- date: 2025-12-21
|
|
131
|
-
context: "Analyzed status tracking"
|
|
132
|
-
insight: "status.json in docs/09-agents/ tracks all stories with owner, status, dependencies, test_status"
|
|
133
|
-
source: "docs/09-agents/status.json"
|
|
134
|
-
|
|
135
|
-
- date: 2025-12-21
|
|
136
|
-
context: "Analyzed research pattern"
|
|
137
|
-
insight: "Research notes use YYYYMMDD-slug.md pattern in docs/10-research/"
|
|
138
|
-
source: "docs/10-research/"
|
|
139
|
-
|
|
140
|
-
- date: 2025-12-24
|
|
141
|
-
context: "Generated command documentation (batch 4 - operations)"
|
|
142
|
-
insight: "Created 6 comprehensive operation command docs (ci, deploy, changelog, packages, tests, compress) following template with quick start, parameters, examples, workflow, output, and related commands sections"
|
|
143
|
-
created_files:
|
|
144
|
-
- "apps/docs/content/docs/commands/ci.mdx (155 lines)"
|
|
145
|
-
- "apps/docs/content/docs/commands/deploy.mdx (324 lines)"
|
|
146
|
-
- "apps/docs/content/docs/commands/changelog.mdx (329 lines)"
|
|
147
|
-
- "apps/docs/content/docs/commands/packages.mdx (377 lines)"
|
|
148
|
-
- "apps/docs/content/docs/commands/tests.mdx (449 lines)"
|
|
149
|
-
- "apps/docs/content/docs/commands/compress.mdx (375 lines)"
|
|
150
|
-
total_lines: 2009
|
|
151
|
-
source: "packages/cli/src/core/commands/*.md"
|
|
152
|
-
notes: "All files follow consistent documentation template: frontmatter, quick start, purpose, parameters table, examples with explanations, workflow steps, output/files, and related commands"
|
|
153
|
-
|
|
154
|
-
- date: 2026-01-09
|
|
155
|
-
context: "Created IDE Integrations documentation for AgileFlow"
|
|
156
|
-
insight: "IDE handler system supports 4 IDEs (Claude Code, Cursor, Windsurf, OpenAI Codex) through plugin architecture. Each IDE has custom config directory (.claude/, .cursor/, .windsurf/, .codex/) and different installation models. Claude Code most advanced (damage control, spawnable agents), OpenAI Codex unique (per-repo skills, user-level prompts, AGENTS.md instructions)"
|
|
157
|
-
created_files:
|
|
158
|
-
- "apps/docs/content/docs/features/ide-integrations.mdx (700+ lines)"
|
|
159
|
-
- "apps/docs/content/docs/features/index.mdx (updated with IDE section)"
|
|
160
|
-
total_lines: 700
|
|
161
|
-
source: "packages/cli/tools/cli/installers/ide/ (_base-ide.js, claude-code.js, cursor.js, windsurf.js, codex.js, manager.js)"
|
|
162
|
-
coverage:
|
|
163
|
-
- "IDE overview table with config dirs, types, status"
|
|
164
|
-
- "Quick start for Claude Code (default IDE)"
|
|
165
|
-
- "Multi-IDE installation instructions"
|
|
166
|
-
- "Detailed setup for each IDE with directory structure"
|
|
167
|
-
- "Command access patterns by IDE"
|
|
168
|
-
- "Claude Code subagent spawning, damage control hooks"
|
|
169
|
-
- "Cursor unique features, differences from Claude Code"
|
|
170
|
-
- "Windsurf workflow management, VSCode integration"
|
|
171
|
-
- "OpenAI Codex dual installation model (per-repo skills, user-level prompts, AGENTS.md)"
|
|
172
|
-
- "Dynamic IDE handler system, extensibility guide"
|
|
173
|
-
- "Content injection system explanation"
|
|
174
|
-
- "Troubleshooting guide for common issues"
|
|
175
|
-
- "Best practices for IDE selection and multi-IDE usage"
|
|
176
|
-
- "Configuration management and version control"
|
|
177
|
-
notes: "Comprehensive 700+ line documentation covering all 4 IDEs with detailed setup, command access, and unique features. Includes handler architecture for IDE developers extending with new IDEs."
|
|
178
|
-
|
|
179
|
-
- date: 2026-02-03
|
|
180
|
-
context: "Generated command documentation (batch 9 - missing commands)"
|
|
181
|
-
insight: "Created 9 comprehensive command docs for audit, batch, choose, council, install, maintain, rlm, rpi, and workflow commands. All follow consistent template with quick start, parameters table, detailed explanations, usage examples, output formats, and related commands"
|
|
182
|
-
created_files:
|
|
183
|
-
- "apps/docs/content/docs/commands/audit.mdx (5.4K)"
|
|
184
|
-
- "apps/docs/content/docs/commands/batch.mdx (6.2K)"
|
|
185
|
-
- "apps/docs/content/docs/commands/choose.mdx (5.5K)"
|
|
186
|
-
- "apps/docs/content/docs/commands/council.mdx (9.3K)"
|
|
187
|
-
- "apps/docs/content/docs/commands/install.mdx (6.7K)"
|
|
188
|
-
- "apps/docs/content/docs/commands/maintain.mdx (6.5K)"
|
|
189
|
-
- "apps/docs/content/docs/commands/rlm.mdx (5.8K)"
|
|
190
|
-
- "apps/docs/content/docs/commands/rpi.mdx (8.0K)"
|
|
191
|
-
- "apps/docs/content/docs/commands/workflow.mdx (8.2K)"
|
|
192
|
-
total_lines: 61_700_characters
|
|
193
|
-
source: "packages/cli/src/core/commands/*.md (source command files)"
|
|
194
|
-
coverage:
|
|
195
|
-
- "audit: Story verification through GSD cycle (tests + acceptance criteria)"
|
|
196
|
-
- "batch: Functional processing patterns (map/pmap/filter/reduce with loop mode)"
|
|
197
|
-
- "choose: AI-directed decision making with structured options analysis"
|
|
198
|
-
- "council: Multi-perspective strategic decisions (3 council members in parallel)"
|
|
199
|
-
- "install: Post-installation validation with 6 check categories"
|
|
200
|
-
- "maintain: Periodic health checks (updates, config, status.json, sessions)"
|
|
201
|
-
- "rlm: Recursive document analysis without context rot (virtualized documents)"
|
|
202
|
-
- "rpi: Research-Plan-Implement workflow with phase transitions"
|
|
203
|
-
- "workflow: Parameterized workflow templates (built-in + custom)"
|
|
204
|
-
notes: "All 9 files follow consistent documentation template extracted from source .md files: quick start, parameters table, detailed descriptions, usage examples with output, status indicators, best practices, error handling, and related commands. Ready for docs site publication."
|
|
117
|
+
context: "Docs directory structure"
|
|
118
|
+
insight: "10 numbered directories (00-meta through 10-research); status.json is single source of truth for story tracking"
|
|
205
119
|
|
|
206
120
|
- date: 2026-02-07
|
|
207
|
-
context: "
|
|
208
|
-
insight: "
|
|
209
|
-
modified_files:
|
|
210
|
-
- "apps/docs/content/docs/commands/configure.mdx (major rewrite - 200+ lines added)"
|
|
211
|
-
- "apps/docs/content/docs/commands/babysit.mdx (200+ lines added)"
|
|
212
|
-
drift_issues_fixed:
|
|
213
|
-
- "configure.mdx: Added 5 profile types (full, basic, minimal, experimental, none)"
|
|
214
|
-
- "configure.mdx: Added hierarchical menu system documentation (5 categories, 4 max options)"
|
|
215
|
-
- "configure.mdx: Added custom profiles (save, export, import, delete)"
|
|
216
|
-
- "configure.mdx: Added all available features (8 total: SessionStart, PreCompact, RalphLoop, SelfImprove, Archival, StatusLine, AskUserQuestion, Tmux, Shell Aliases, Auto-Update, CLAUDE.md Rules)"
|
|
217
|
-
- "configure.mdx: Added maintenance commands (detect, migrate, upgrade, repair, list-scripts)"
|
|
218
|
-
- "configure.mdx: Added troubleshooting section with solutions"
|
|
219
|
-
- "babysit.mdx: Added Smart Detection section (auto-enable Loop/Visual/Coverage/Conditions modes)"
|
|
220
|
-
- "babysit.mdx: Added Story Claiming section (multi-session coordination, prevent conflicts)"
|
|
221
|
-
- "babysit.mdx: Added Logic Audit integration (post-implementation quality check)"
|
|
222
|
-
- "babysit.mdx: Updated Loop Mode to show auto-detection instead of explicit parameters"
|
|
223
|
-
verified_good:
|
|
224
|
-
- "council.mdx: Comprehensive and current"
|
|
225
|
-
- "audit.mdx: Good alignment with source"
|
|
226
|
-
- "choose.mdx: Good alignment with source"
|
|
227
|
-
quality_gates:
|
|
228
|
-
- "Description matches source frontmatter ✓"
|
|
229
|
-
- "Parameters documented with types and defaults ✓"
|
|
230
|
-
- "Examples are copy-paste ready ✓"
|
|
231
|
-
- "Usage patterns match source implementation ✓"
|
|
232
|
-
- "Links to related commands accurate ✓"
|
|
233
|
-
- "No outdated information remains ✓"
|
|
234
|
-
- "All new features from source documented ✓"
|
|
235
|
-
- "Formatting consistent (tables, code blocks, bullets) ✓"
|
|
236
|
-
source: "packages/cli/src/core/commands/*.md vs apps/docs/content/docs/commands/*.mdx"
|
|
237
|
-
notes: "Used systematic comparison approach: extracted descriptions, parameters, and features from 50 source commands against documentation. Prioritized commands with most feature additions: babysit (Smart Detection, Story Claiming, Logic Audit), configure (profiles, hierarchical menus). All changes preserve source accuracy while making docs more discoverable and comprehensive."
|
|
121
|
+
context: "Documentation drift detection"
|
|
122
|
+
insight: "Source commands drift from docs site; systematic comparison needed. configure.mdx and babysit.mdx had 50%+ outdated content"
|
|
238
123
|
|
|
239
124
|
- date: 2026-02-14
|
|
240
|
-
context: "
|
|
241
|
-
insight: "
|
|
242
|
-
fixed_issues:
|
|
243
|
-
- "packages/cli/README.md line 42: Updated Cursor from .cursor/rules/agileflow/ to .cursor/commands/agileflow/"
|
|
244
|
-
- "packages/cli/README.md line 44: Updated Codex from .codex/skills/ to .codex/skills/ and ~/.codex/prompts/"
|
|
245
|
-
verified:
|
|
246
|
-
- "Badge counts: 93 commands (correct), 45 agents (correct), dynamic skills (correct)"
|
|
247
|
-
- "All 11 referenced documentation files exist"
|
|
248
|
-
- "All 6 example commands/agents exist in source"
|
|
249
|
-
- "External links functional: npm (HTTP 200), GitHub (HTTP 200), docs site (HTTP 200)"
|
|
250
|
-
- "README files now identical (diff shows no differences)"
|
|
251
|
-
quality_gates:
|
|
252
|
-
- "Documentation current with v3.0.2 code ✓"
|
|
253
|
-
- "Counts verified against actual source files ✓"
|
|
254
|
-
- "IDE config verified against installers ✓"
|
|
255
|
-
- "All example commands/agents exist ✓"
|
|
256
|
-
- "No deprecated information remains ✓"
|
|
257
|
-
- "Two README files synchronized ✓"
|
|
258
|
-
source: "README.md, packages/cli/README.md, packages/cli/tools/cli/installers/ide/*.js"
|
|
259
|
-
notes: "Learned that IDE config locations can drift from documentation. Always verify against actual installer code (cursor.js, codex.js, etc.) not assumptions. OpenAI Codex has dual installation model (per-repo .codex/skills/ + user-level ~/.codex/prompts/) - this must be documented completely."
|
|
125
|
+
context: "IDE config documentation accuracy"
|
|
126
|
+
insight: "Always verify IDE config paths against installer code (cursor.js, codex.js), not assumptions. Codex has dual model (per-repo + user-level)"
|
|
@@ -102,132 +102,12 @@ conventions:
|
|
|
102
102
|
- "Mock external services in tests"
|
|
103
103
|
- "Document all required environment variables"
|
|
104
104
|
|
|
105
|
-
|
|
106
|
-
payment:
|
|
107
|
-
- name: Stripe
|
|
108
|
-
env_vars: [STRIPE_API_KEY, STRIPE_WEBHOOK_SECRET]
|
|
109
|
-
webhooks: [payment.completed, subscription.updated, refund.created]
|
|
110
|
-
- name: PayPal
|
|
111
|
-
env_vars: [PAYPAL_CLIENT_ID, PAYPAL_CLIENT_SECRET]
|
|
112
|
-
- name: Square
|
|
113
|
-
env_vars: [SQUARE_ACCESS_TOKEN]
|
|
114
|
-
|
|
115
|
-
email:
|
|
116
|
-
- name: SendGrid
|
|
117
|
-
env_vars: [SENDGRID_API_KEY]
|
|
118
|
-
webhooks: [email.delivered, email.bounced, email.complained]
|
|
119
|
-
- name: Mailgun
|
|
120
|
-
env_vars: [MAILGUN_API_KEY, MAILGUN_DOMAIN]
|
|
121
|
-
|
|
122
|
-
auth:
|
|
123
|
-
- name: Auth0
|
|
124
|
-
env_vars: [AUTH0_DOMAIN, AUTH0_CLIENT_ID, AUTH0_CLIENT_SECRET]
|
|
125
|
-
- name: Google OAuth
|
|
126
|
-
env_vars: [GOOGLE_CLIENT_ID, GOOGLE_CLIENT_SECRET]
|
|
127
|
-
- name: GitHub OAuth
|
|
128
|
-
env_vars: [GITHUB_CLIENT_ID, GITHUB_CLIENT_SECRET]
|
|
129
|
-
|
|
130
|
-
messaging:
|
|
131
|
-
- name: Twilio
|
|
132
|
-
env_vars: [TWILIO_ACCOUNT_SID, TWILIO_AUTH_TOKEN]
|
|
133
|
-
webhooks: [message.delivered, message.failed]
|
|
134
|
-
|
|
135
|
-
storage:
|
|
136
|
-
- name: AWS S3
|
|
137
|
-
env_vars: [AWS_ACCESS_KEY_ID, AWS_SECRET_ACCESS_KEY, AWS_S3_BUCKET]
|
|
138
|
-
- name: Google Cloud Storage
|
|
139
|
-
env_vars: [GCS_PROJECT_ID, GCS_BUCKET]
|
|
140
|
-
|
|
141
|
-
# Learnings are AUTO-UPDATED by self-improve.md
|
|
142
|
-
# Do not edit manually - let the agent learn from experience
|
|
105
|
+
# Learnings (trimmed - keep 2 most actionable)
|
|
143
106
|
learnings:
|
|
144
|
-
-
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
learning: |
|
|
148
|
-
IDE integrations require platform-specific installers that handle different configuration locations:
|
|
149
|
-
- Claude Code: `.claude/commands/` for slash commands
|
|
150
|
-
- Cursor: `.cursor/commands/` for slash commands
|
|
151
|
-
- Windsurf: `.windsurf/commands/` for slash commands
|
|
152
|
-
|
|
153
|
-
Implementation approach:
|
|
154
|
-
1. Create IDE-specific installer scripts in `installers/ide/` directory
|
|
155
|
-
2. Each installer knows its target config directory structure
|
|
156
|
-
3. Use shared installation logic with IDE-specific paths
|
|
157
|
-
4. Test each installer independently
|
|
158
|
-
|
|
159
|
-
Key files: `installers/ide/install-claude-code.js`, `install-cursor.js`, `install-windsurf.js`
|
|
160
|
-
impact: "Enables AgileFlow to work across multiple development environments without manual configuration"
|
|
161
|
-
|
|
162
|
-
- title: "npm Registry Integration via GitHub Actions"
|
|
163
|
-
date: 2025-12-21
|
|
164
|
-
context: "AgileFlow automates publishing to npm registry when git tags are pushed"
|
|
165
|
-
learning: |
|
|
166
|
-
GitHub Actions can automate npm publishing with proper token management:
|
|
167
|
-
1. Store NPM_TOKEN in GitHub Secrets (repo settings)
|
|
168
|
-
2. Create workflow triggered by tag push pattern `v*.*.*`
|
|
169
|
-
3. Verify version consistency before publishing
|
|
170
|
-
4. Use `npm publish --access public` for public packages
|
|
171
|
-
|
|
172
|
-
Critical checks in workflow:
|
|
173
|
-
- Extract version from git tag
|
|
174
|
-
- Verify package.json version matches tag
|
|
175
|
-
- Verify CHANGELOG.md has release notes for version
|
|
176
|
-
- Install dependencies if package-lock.json exists
|
|
177
|
-
- Publish with NPM_TOKEN authentication
|
|
178
|
-
|
|
179
|
-
Key file: `.github/workflows/npm-publish.yml`
|
|
180
|
-
impact: "Eliminates manual publishing errors and ensures consistent release process"
|
|
181
|
-
|
|
182
|
-
- title: "Dynamic Content Injection at Install Time"
|
|
183
|
-
date: 2025-12-21
|
|
184
|
-
context: "AgileFlow uses placeholders in source files that get replaced with current content during installation"
|
|
185
|
-
learning: |
|
|
186
|
-
Dynamic content injection pattern avoids maintenance overhead for lists that change frequently:
|
|
187
|
-
|
|
188
|
-
Source files use placeholders:
|
|
189
|
-
- `<!-- {{AGENT_LIST}} -->` - Gets replaced with current agent list
|
|
190
|
-
- `<!-- {{COMMAND_LIST}} -->` - Gets replaced with current command list
|
|
191
|
-
- `<!-- {{SKILL_LIST}} -->` - Gets replaced with current skill list
|
|
192
|
-
|
|
193
|
-
Installer scans source files during installation and:
|
|
194
|
-
1. Detects placeholder patterns
|
|
195
|
-
2. Generates current list from filesystem (e.g., scan agents/ directory)
|
|
196
|
-
3. Replaces placeholder with formatted list
|
|
197
|
-
4. Writes installed file with injected content
|
|
198
|
-
|
|
199
|
-
Benefits:
|
|
200
|
-
- Zero maintenance overhead (no manual list updates)
|
|
201
|
-
- Always current (generated at install time)
|
|
202
|
-
- Source files stay clean and simple
|
|
203
|
-
- Installed files have complete information
|
|
204
|
-
|
|
205
|
-
Used in: babysit.md, expert.md, and other command files
|
|
206
|
-
impact: "Reduces maintenance burden and prevents stale documentation"
|
|
207
|
-
|
|
208
|
-
- title: "CI/CD Integration: Automated Release Workflow"
|
|
209
|
-
date: 2025-12-21
|
|
210
|
-
context: "AgileFlow uses release script + GitHub Actions for end-to-end release automation"
|
|
211
|
-
learning: |
|
|
212
|
-
Complete CI/CD integration requires coordinating multiple systems:
|
|
213
|
-
|
|
214
|
-
1. Local automation (release.sh script):
|
|
215
|
-
- Version bumping across multiple package.json files
|
|
216
|
-
- Git commit and tag creation
|
|
217
|
-
- GitHub release creation via `gh` CLI
|
|
218
|
-
|
|
219
|
-
2. Remote automation (GitHub Actions):
|
|
220
|
-
- Triggered by tag push
|
|
221
|
-
- Version verification (tag matches package.json)
|
|
222
|
-
- CHANGELOG verification (release notes exist)
|
|
223
|
-
- npm publishing with token authentication
|
|
224
|
-
|
|
225
|
-
3. Integration points:
|
|
226
|
-
- Git tags trigger GitHub Actions workflows
|
|
227
|
-
- GitHub Secrets provide secure token storage
|
|
228
|
-
- Workflow status appears in GitHub UI
|
|
229
|
-
- npm registry reflects published version
|
|
107
|
+
- date: 2025-12-21
|
|
108
|
+
context: "IDE integration pattern"
|
|
109
|
+
insight: "IDE-specific installers in installers/ide/ handle different config dirs (.claude/, .cursor/, .windsurf/). Shared logic in _base-ide.js, overrides per IDE."
|
|
230
110
|
|
|
231
|
-
|
|
232
|
-
|
|
233
|
-
|
|
111
|
+
- date: 2025-12-21
|
|
112
|
+
context: "Content injection"
|
|
113
|
+
insight: "Placeholders ({{AGENT_LIST}}, {{COMMAND_LIST}}) in source files replaced at install time. Zero runtime overhead."
|