aios-core 2.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.
- package/.aios-core/.session/current-session.json +14 -0
- package/.aios-core/cli/commands/generate/index.js +222 -0
- package/.aios-core/cli/commands/manifest/index.js +46 -0
- package/.aios-core/cli/commands/manifest/regenerate.js +96 -0
- package/.aios-core/cli/commands/manifest/validate.js +66 -0
- package/.aios-core/cli/commands/mcp/add.js +234 -0
- package/.aios-core/cli/commands/mcp/index.js +76 -0
- package/.aios-core/cli/commands/mcp/link.js +217 -0
- package/.aios-core/cli/commands/mcp/setup.js +164 -0
- package/.aios-core/cli/commands/mcp/status.js +183 -0
- package/.aios-core/cli/commands/metrics/cleanup.js +91 -0
- package/.aios-core/cli/commands/metrics/index.js +65 -0
- package/.aios-core/cli/commands/metrics/record.js +154 -0
- package/.aios-core/cli/commands/metrics/seed.js +126 -0
- package/.aios-core/cli/commands/metrics/show.js +209 -0
- package/.aios-core/cli/commands/migrate/analyze.js +353 -0
- package/.aios-core/cli/commands/migrate/backup.js +352 -0
- package/.aios-core/cli/commands/migrate/execute.js +292 -0
- package/.aios-core/cli/commands/migrate/index.js +441 -0
- package/.aios-core/cli/commands/migrate/rollback.js +323 -0
- package/.aios-core/cli/commands/migrate/update-imports.js +396 -0
- package/.aios-core/cli/commands/migrate/validate.js +452 -0
- package/.aios-core/cli/commands/qa/index.js +56 -0
- package/.aios-core/cli/commands/qa/run.js +163 -0
- package/.aios-core/cli/commands/qa/status.js +195 -0
- package/.aios-core/cli/commands/workers/formatters/info-formatter.js +274 -0
- package/.aios-core/cli/commands/workers/formatters/list-table.js +265 -0
- package/.aios-core/cli/commands/workers/formatters/list-tree.js +159 -0
- package/.aios-core/cli/commands/workers/index.js +56 -0
- package/.aios-core/cli/commands/workers/info.js +194 -0
- package/.aios-core/cli/commands/workers/list.js +214 -0
- package/.aios-core/cli/commands/workers/search-filters.js +185 -0
- package/.aios-core/cli/commands/workers/search-keyword.js +310 -0
- package/.aios-core/cli/commands/workers/search-semantic.js +293 -0
- package/.aios-core/cli/commands/workers/search.js +154 -0
- package/.aios-core/cli/commands/workers/utils/pagination.js +102 -0
- package/.aios-core/cli/index.js +128 -0
- package/.aios-core/cli/utils/output-formatter-cli.js +232 -0
- package/.aios-core/cli/utils/score-calculator.js +221 -0
- package/.aios-core/core/README.md +229 -0
- package/.aios-core/core/config/config-cache.js +233 -0
- package/.aios-core/core/config/config-loader.js +277 -0
- package/.aios-core/core/data/agent-config-requirements.yaml +368 -0
- package/.aios-core/core/data/aios-kb.md +924 -0
- package/.aios-core/core/data/workflow-patterns.yaml +267 -0
- package/.aios-core/core/docs/SHARD-TRANSLATION-GUIDE.md +335 -0
- package/.aios-core/core/docs/component-creation-guide.md +458 -0
- package/.aios-core/core/docs/session-update-pattern.md +307 -0
- package/.aios-core/core/docs/template-syntax.md +267 -0
- package/.aios-core/core/docs/troubleshooting-guide.md +625 -0
- package/.aios-core/core/elicitation/agent-elicitation.js +272 -0
- package/.aios-core/core/elicitation/elicitation-engine.js +479 -0
- package/.aios-core/core/elicitation/session-manager.js +320 -0
- package/.aios-core/core/elicitation/task-elicitation.js +281 -0
- package/.aios-core/core/elicitation/workflow-elicitation.js +315 -0
- package/.aios-core/core/index.esm.js +42 -0
- package/.aios-core/core/index.js +76 -0
- package/.aios-core/core/manifest/manifest-generator.js +386 -0
- package/.aios-core/core/manifest/manifest-validator.js +429 -0
- package/.aios-core/core/mcp/config-migrator.js +340 -0
- package/.aios-core/core/mcp/global-config-manager.js +369 -0
- package/.aios-core/core/mcp/index.js +34 -0
- package/.aios-core/core/mcp/os-detector.js +188 -0
- package/.aios-core/core/mcp/symlink-manager.js +413 -0
- package/.aios-core/core/migration/migration-config.yaml +83 -0
- package/.aios-core/core/migration/module-mapping.yaml +89 -0
- package/.aios-core/core/quality-gates/base-layer.js +134 -0
- package/.aios-core/core/quality-gates/checklist-generator.js +329 -0
- package/.aios-core/core/quality-gates/focus-area-recommender.js +359 -0
- package/.aios-core/core/quality-gates/human-review-orchestrator.js +529 -0
- package/.aios-core/core/quality-gates/layer1-precommit.js +336 -0
- package/.aios-core/core/quality-gates/layer2-pr-automation.js +324 -0
- package/.aios-core/core/quality-gates/layer3-human-review.js +348 -0
- package/.aios-core/core/quality-gates/notification-manager.js +550 -0
- package/.aios-core/core/quality-gates/quality-gate-config.yaml +86 -0
- package/.aios-core/core/quality-gates/quality-gate-manager.js +601 -0
- package/.aios-core/core/registry/README.md +179 -0
- package/.aios-core/core/registry/build-registry.js +452 -0
- package/.aios-core/core/registry/registry-loader.js +330 -0
- package/.aios-core/core/registry/registry-schema.json +166 -0
- package/.aios-core/core/registry/service-registry.json +6586 -0
- package/.aios-core/core/registry/validate-registry.js +340 -0
- package/.aios-core/core/session/context-detector.js +229 -0
- package/.aios-core/core/session/context-loader.js +288 -0
- package/.aios-core/core/utils/output-formatter.js +298 -0
- package/.aios-core/core/utils/security-utils.js +333 -0
- package/.aios-core/core/utils/yaml-validator.js +419 -0
- package/.aios-core/core-config.yaml +382 -0
- package/.aios-core/data/agent-config-requirements.yaml +368 -0
- package/.aios-core/data/aios-kb.md +924 -0
- package/.aios-core/data/technical-preferences.md +4 -0
- package/.aios-core/data/workflow-patterns.yaml +267 -0
- package/.aios-core/development/README.md +142 -0
- package/.aios-core/development/agent-teams/team-all.yaml +15 -0
- package/.aios-core/development/agent-teams/team-fullstack.yaml +18 -0
- package/.aios-core/development/agent-teams/team-ide-minimal.yaml +10 -0
- package/.aios-core/development/agent-teams/team-no-ui.yaml +13 -0
- package/.aios-core/development/agent-teams/team-qa-focused.yaml +155 -0
- package/.aios-core/development/agents/aios-master.md +339 -0
- package/.aios-core/development/agents/analyst.md +195 -0
- package/.aios-core/development/agents/architect.md +359 -0
- package/.aios-core/development/agents/data-engineer.md +468 -0
- package/.aios-core/development/agents/dev.md +390 -0
- package/.aios-core/development/agents/devops.md +398 -0
- package/.aios-core/development/agents/pm.md +198 -0
- package/.aios-core/development/agents/po.md +256 -0
- package/.aios-core/development/agents/qa.md +312 -0
- package/.aios-core/development/agents/sm.md +220 -0
- package/.aios-core/development/agents/ux-design-expert.md +451 -0
- package/.aios-core/development/scripts/agent-assignment-resolver.js +231 -0
- package/.aios-core/development/scripts/agent-config-loader.js +624 -0
- package/.aios-core/development/scripts/agent-exit-hooks.js +96 -0
- package/.aios-core/development/scripts/apply-inline-greeting-all-agents.js +146 -0
- package/.aios-core/development/scripts/audit-agent-config.js +380 -0
- package/.aios-core/development/scripts/backlog-manager.js +404 -0
- package/.aios-core/development/scripts/batch-update-agents-session-context.js +95 -0
- package/.aios-core/development/scripts/decision-context.js +228 -0
- package/.aios-core/development/scripts/decision-log-generator.js +293 -0
- package/.aios-core/development/scripts/decision-log-indexer.js +284 -0
- package/.aios-core/development/scripts/decision-recorder.js +168 -0
- package/.aios-core/development/scripts/dev-context-loader.js +297 -0
- package/.aios-core/development/scripts/generate-greeting.js +160 -0
- package/.aios-core/development/scripts/greeting-builder.js +866 -0
- package/.aios-core/development/scripts/greeting-config-cli.js +85 -0
- package/.aios-core/development/scripts/greeting-preference-manager.js +145 -0
- package/.aios-core/development/scripts/migrate-task-to-v2.js +377 -0
- package/.aios-core/development/scripts/story-index-generator.js +337 -0
- package/.aios-core/development/scripts/story-manager.js +375 -0
- package/.aios-core/development/scripts/story-update-hook.js +259 -0
- package/.aios-core/development/scripts/task-identifier-resolver.js +145 -0
- package/.aios-core/development/scripts/test-greeting-system.js +142 -0
- package/.aios-core/development/scripts/validate-task-v2.js +319 -0
- package/.aios-core/development/scripts/workflow-navigator.js +214 -0
- package/.aios-core/development/tasks/add-mcp.md +319 -0
- package/.aios-core/development/tasks/advanced-elicitation.md +319 -0
- package/.aios-core/development/tasks/analyst-facilitate-brainstorming.md +342 -0
- package/.aios-core/development/tasks/analyze-framework.md +697 -0
- package/.aios-core/development/tasks/analyze-performance.md +637 -0
- package/.aios-core/development/tasks/apply-qa-fixes.md +340 -0
- package/.aios-core/development/tasks/architect-analyze-impact.md +827 -0
- package/.aios-core/development/tasks/audit-codebase.md +429 -0
- package/.aios-core/development/tasks/audit-tailwind-config.md +270 -0
- package/.aios-core/development/tasks/audit-utilities.md +358 -0
- package/.aios-core/development/tasks/bootstrap-shadcn-library.md +286 -0
- package/.aios-core/development/tasks/brownfield-create-epic.md +486 -0
- package/.aios-core/development/tasks/brownfield-create-story.md +357 -0
- package/.aios-core/development/tasks/build-component.md +478 -0
- package/.aios-core/development/tasks/calculate-roi.md +455 -0
- package/.aios-core/development/tasks/ci-cd-configuration.md +764 -0
- package/.aios-core/development/tasks/cleanup-utilities.md +670 -0
- package/.aios-core/development/tasks/collaborative-edit.md +1109 -0
- package/.aios-core/development/tasks/compose-molecule.md +284 -0
- package/.aios-core/development/tasks/consolidate-patterns.md +414 -0
- package/.aios-core/development/tasks/correct-course.md +280 -0
- package/.aios-core/development/tasks/create-agent.md +322 -0
- package/.aios-core/development/tasks/create-brownfield-story.md +727 -0
- package/.aios-core/development/tasks/create-deep-research-prompt.md +499 -0
- package/.aios-core/development/tasks/create-doc.md +316 -0
- package/.aios-core/development/tasks/create-next-story.md +774 -0
- package/.aios-core/development/tasks/create-suite.md +284 -0
- package/.aios-core/development/tasks/create-task.md +372 -0
- package/.aios-core/development/tasks/create-workflow.md +371 -0
- package/.aios-core/development/tasks/db-analyze-hotpaths.md +572 -0
- package/.aios-core/development/tasks/db-apply-migration.md +381 -0
- package/.aios-core/development/tasks/db-bootstrap.md +642 -0
- package/.aios-core/development/tasks/db-domain-modeling.md +693 -0
- package/.aios-core/development/tasks/db-dry-run.md +293 -0
- package/.aios-core/development/tasks/db-env-check.md +260 -0
- package/.aios-core/development/tasks/db-expansion-pack-integration.md +663 -0
- package/.aios-core/development/tasks/db-explain.md +631 -0
- package/.aios-core/development/tasks/db-impersonate.md +495 -0
- package/.aios-core/development/tasks/db-load-csv.md +593 -0
- package/.aios-core/development/tasks/db-policy-apply.md +653 -0
- package/.aios-core/development/tasks/db-rls-audit.md +411 -0
- package/.aios-core/development/tasks/db-rollback.md +739 -0
- package/.aios-core/development/tasks/db-run-sql.md +613 -0
- package/.aios-core/development/tasks/db-schema-audit.md +1011 -0
- package/.aios-core/development/tasks/db-seed.md +390 -0
- package/.aios-core/development/tasks/db-smoke-test.md +351 -0
- package/.aios-core/development/tasks/db-snapshot.md +569 -0
- package/.aios-core/development/tasks/db-supabase-setup.md +712 -0
- package/.aios-core/development/tasks/db-verify-order.md +515 -0
- package/.aios-core/development/tasks/deprecate-component.md +957 -0
- package/.aios-core/development/tasks/dev-apply-qa-fixes.md +318 -0
- package/.aios-core/development/tasks/dev-backlog-debt.md +469 -0
- package/.aios-core/development/tasks/dev-develop-story.md +846 -0
- package/.aios-core/development/tasks/dev-improve-code-quality.md +873 -0
- package/.aios-core/development/tasks/dev-optimize-performance.md +1034 -0
- package/.aios-core/development/tasks/dev-suggest-refactoring.md +871 -0
- package/.aios-core/development/tasks/dev-validate-next-story.md +349 -0
- package/.aios-core/development/tasks/document-project.md +553 -0
- package/.aios-core/development/tasks/environment-bootstrap.md +1311 -0
- package/.aios-core/development/tasks/execute-checklist.md +301 -0
- package/.aios-core/development/tasks/export-design-tokens-dtcg.md +274 -0
- package/.aios-core/development/tasks/extend-pattern.md +269 -0
- package/.aios-core/development/tasks/extract-tokens.md +467 -0
- package/.aios-core/development/tasks/facilitate-brainstorming-session.md +518 -0
- package/.aios-core/development/tasks/generate-ai-frontend-prompt.md +261 -0
- package/.aios-core/development/tasks/generate-documentation.md +284 -0
- package/.aios-core/development/tasks/generate-migration-strategy.md +522 -0
- package/.aios-core/development/tasks/generate-shock-report.md +501 -0
- package/.aios-core/development/tasks/github-devops-github-pr-automation.md +427 -0
- package/.aios-core/development/tasks/github-devops-pre-push-quality-gate.md +733 -0
- package/.aios-core/development/tasks/github-devops-repository-cleanup.md +374 -0
- package/.aios-core/development/tasks/github-devops-version-management.md +483 -0
- package/.aios-core/development/tasks/improve-self.md +823 -0
- package/.aios-core/development/tasks/index-docs.md +388 -0
- package/.aios-core/development/tasks/init-project-status.md +506 -0
- package/.aios-core/development/tasks/integrate-expansion-pack.md +314 -0
- package/.aios-core/development/tasks/kb-mode-interaction.md +284 -0
- package/.aios-core/development/tasks/learn-patterns.md +901 -0
- package/.aios-core/development/tasks/mcp-workflow.md +437 -0
- package/.aios-core/development/tasks/modify-agent.md +382 -0
- package/.aios-core/development/tasks/modify-task.md +425 -0
- package/.aios-core/development/tasks/modify-workflow.md +466 -0
- package/.aios-core/development/tasks/po-backlog-add.md +370 -0
- package/.aios-core/development/tasks/po-manage-story-backlog.md +523 -0
- package/.aios-core/development/tasks/po-pull-story-from-clickup.md +540 -0
- package/.aios-core/development/tasks/po-pull-story.md +316 -0
- package/.aios-core/development/tasks/po-stories-index.md +351 -0
- package/.aios-core/development/tasks/po-sync-story-to-clickup.md +457 -0
- package/.aios-core/development/tasks/po-sync-story.md +303 -0
- package/.aios-core/development/tasks/pr-automation.md +701 -0
- package/.aios-core/development/tasks/propose-modification.md +843 -0
- package/.aios-core/development/tasks/qa-backlog-add-followup.md +425 -0
- package/.aios-core/development/tasks/qa-gate.md +374 -0
- package/.aios-core/development/tasks/qa-generate-tests.md +1175 -0
- package/.aios-core/development/tasks/qa-nfr-assess.md +558 -0
- package/.aios-core/development/tasks/qa-review-proposal.md +1158 -0
- package/.aios-core/development/tasks/qa-review-story.md +683 -0
- package/.aios-core/development/tasks/qa-risk-profile.md +567 -0
- package/.aios-core/development/tasks/qa-run-tests.md +277 -0
- package/.aios-core/development/tasks/qa-test-design.md +388 -0
- package/.aios-core/development/tasks/qa-trace-requirements.md +477 -0
- package/.aios-core/development/tasks/release-management.md +723 -0
- package/.aios-core/development/tasks/security-audit.md +554 -0
- package/.aios-core/development/tasks/security-scan.md +790 -0
- package/.aios-core/development/tasks/setup-database.md +741 -0
- package/.aios-core/development/tasks/setup-design-system.md +462 -0
- package/.aios-core/development/tasks/setup-github.md +874 -0
- package/.aios-core/development/tasks/setup-llm-routing.md +229 -0
- package/.aios-core/development/tasks/setup-mcp-docker.md +584 -0
- package/.aios-core/development/tasks/shard-doc.md +538 -0
- package/.aios-core/development/tasks/sm-create-next-story.md +480 -0
- package/.aios-core/development/tasks/sync-documentation.md +865 -0
- package/.aios-core/development/tasks/tailwind-upgrade.md +294 -0
- package/.aios-core/development/tasks/test-as-user.md +621 -0
- package/.aios-core/development/tasks/test-validation-task.md +171 -0
- package/.aios-core/development/tasks/undo-last.md +347 -0
- package/.aios-core/development/tasks/update-manifest.md +410 -0
- package/.aios-core/development/tasks/ux-create-wireframe.md +617 -0
- package/.aios-core/development/tasks/ux-ds-scan-artifact.md +672 -0
- package/.aios-core/development/tasks/ux-user-research.md +559 -0
- package/.aios-core/development/tasks/validate-next-story.md +423 -0
- package/.aios-core/development/tasks/validate-structure.md +243 -0
- package/.aios-core/development/workflows/README.md +84 -0
- package/.aios-core/development/workflows/brownfield-fullstack.yaml +297 -0
- package/.aios-core/development/workflows/brownfield-service.yaml +187 -0
- package/.aios-core/development/workflows/brownfield-ui.yaml +197 -0
- package/.aios-core/development/workflows/greenfield-fullstack.yaml +333 -0
- package/.aios-core/development/workflows/greenfield-service.yaml +206 -0
- package/.aios-core/development/workflows/greenfield-ui.yaml +235 -0
- package/.aios-core/docs/SHARD-TRANSLATION-GUIDE.md +335 -0
- package/.aios-core/docs/component-creation-guide.md +458 -0
- package/.aios-core/docs/session-update-pattern.md +307 -0
- package/.aios-core/docs/standards/AGENT-PERSONALIZATION-STANDARD-V1.md +572 -0
- package/.aios-core/docs/standards/AIOS-COLOR-PALETTE-QUICK-REFERENCE.md +185 -0
- package/.aios-core/docs/standards/AIOS-COLOR-PALETTE-V2.1.md +354 -0
- package/.aios-core/docs/standards/AIOS-FRAMEWORK-MASTER.md +1963 -0
- package/.aios-core/docs/standards/AIOS-LIVRO-DE-OURO-V2.1-COMPLETE.md +821 -0
- package/.aios-core/docs/standards/AIOS-LIVRO-DE-OURO-V2.1-SUMMARY.md +1190 -0
- package/.aios-core/docs/standards/AIOS-LIVRO-DE-OURO-V2.1.md +439 -0
- package/.aios-core/docs/standards/AIOS-LIVRO-DE-OURO-V2.2-SUMMARY.md +1339 -0
- package/.aios-core/docs/standards/AIOS-LIVRO-DE-OURO.md +5398 -0
- package/.aios-core/docs/standards/EXECUTOR-DECISION-TREE.md +697 -0
- package/.aios-core/docs/standards/OPEN-SOURCE-VS-SERVICE-DIFFERENCES.md +511 -0
- package/.aios-core/docs/standards/QUALITY-GATES-SPECIFICATION.md +556 -0
- package/.aios-core/docs/standards/STANDARDS-INDEX.md +210 -0
- package/.aios-core/docs/standards/STORY-TEMPLATE-V2-SPECIFICATION.md +550 -0
- package/.aios-core/docs/standards/TASK-FORMAT-SPECIFICATION-V1.md +1414 -0
- package/.aios-core/docs/standards/V3-ARCHITECTURAL-DECISIONS.md +523 -0
- package/.aios-core/docs/template-syntax.md +267 -0
- package/.aios-core/docs/troubleshooting-guide.md +625 -0
- package/.aios-core/elicitation/agent-elicitation.js +272 -0
- package/.aios-core/elicitation/task-elicitation.js +281 -0
- package/.aios-core/elicitation/workflow-elicitation.js +315 -0
- package/.aios-core/index.d.ts +8 -0
- package/.aios-core/index.esm.js +16 -0
- package/.aios-core/index.js +16 -0
- package/.aios-core/infrastructure/README.md +126 -0
- package/.aios-core/infrastructure/index.js +199 -0
- package/.aios-core/infrastructure/integrations/pm-adapters/README.md +59 -0
- package/.aios-core/infrastructure/integrations/pm-adapters/clickup-adapter.js +345 -0
- package/.aios-core/infrastructure/integrations/pm-adapters/github-adapter.js +392 -0
- package/.aios-core/infrastructure/integrations/pm-adapters/jira-adapter.js +448 -0
- package/.aios-core/infrastructure/integrations/pm-adapters/local-adapter.js +175 -0
- package/.aios-core/infrastructure/scripts/_archived/final-todo-count.js +122 -0
- package/.aios-core/infrastructure/scripts/_archived/fix-yaml-formatting.js +89 -0
- package/.aios-core/infrastructure/scripts/_archived/migration-generator.js +780 -0
- package/.aios-core/infrastructure/scripts/_archived/migration-path-generator.js +950 -0
- package/.aios-core/infrastructure/scripts/_archived/phase2-entrada-saida-errors.js +425 -0
- package/.aios-core/infrastructure/scripts/_archived/phase2-spot-check.js +132 -0
- package/.aios-core/infrastructure/scripts/_archived/phase3-tools-scripts-validation.js +381 -0
- package/.aios-core/infrastructure/scripts/_archived/phase4-metadata-performance.js +203 -0
- package/.aios-core/infrastructure/scripts/_archived/test-yaml-parsing.js +24 -0
- package/.aios-core/infrastructure/scripts/_archived/verify-yaml-fix.js +51 -0
- package/.aios-core/infrastructure/scripts/aios-validator.js +294 -0
- package/.aios-core/infrastructure/scripts/approval-workflow.js +643 -0
- package/.aios-core/infrastructure/scripts/atomic-layer-classifier.js +308 -0
- package/.aios-core/infrastructure/scripts/backup-manager.js +607 -0
- package/.aios-core/infrastructure/scripts/batch-creator.js +608 -0
- package/.aios-core/infrastructure/scripts/branch-manager.js +391 -0
- package/.aios-core/infrastructure/scripts/capability-analyzer.js +535 -0
- package/.aios-core/infrastructure/scripts/clickup-helpers.js +226 -0
- package/.aios-core/infrastructure/scripts/code-quality-improver.js +1312 -0
- package/.aios-core/infrastructure/scripts/commit-message-generator.js +850 -0
- package/.aios-core/infrastructure/scripts/component-generator.js +738 -0
- package/.aios-core/infrastructure/scripts/component-metadata.js +627 -0
- package/.aios-core/infrastructure/scripts/component-search.js +277 -0
- package/.aios-core/infrastructure/scripts/config-cache.js +322 -0
- package/.aios-core/infrastructure/scripts/config-loader.js +349 -0
- package/.aios-core/infrastructure/scripts/conflict-resolver.js +675 -0
- package/.aios-core/infrastructure/scripts/coverage-analyzer.js +882 -0
- package/.aios-core/infrastructure/scripts/dependency-analyzer.js +638 -0
- package/.aios-core/infrastructure/scripts/dependency-impact-analyzer.js +703 -0
- package/.aios-core/infrastructure/scripts/diff-generator.js +129 -0
- package/.aios-core/infrastructure/scripts/documentation-integrity/brownfield-analyzer.js +501 -0
- package/.aios-core/infrastructure/scripts/documentation-integrity/config-generator.js +329 -0
- package/.aios-core/infrastructure/scripts/documentation-integrity/deployment-config-loader.js +282 -0
- package/.aios-core/infrastructure/scripts/documentation-integrity/doc-generator.js +331 -0
- package/.aios-core/infrastructure/scripts/documentation-integrity/gitignore-generator.js +313 -0
- package/.aios-core/infrastructure/scripts/documentation-integrity/index.js +74 -0
- package/.aios-core/infrastructure/scripts/documentation-integrity/mode-detector.js +358 -0
- package/.aios-core/infrastructure/scripts/documentation-synchronizer.js +1432 -0
- package/.aios-core/infrastructure/scripts/framework-analyzer.js +746 -0
- package/.aios-core/infrastructure/scripts/git-config-detector.js +293 -0
- package/.aios-core/infrastructure/scripts/git-wrapper.js +443 -0
- package/.aios-core/infrastructure/scripts/improvement-engine.js +758 -0
- package/.aios-core/infrastructure/scripts/improvement-validator.js +710 -0
- package/.aios-core/infrastructure/scripts/llm-routing/install-llm-routing.js +267 -0
- package/.aios-core/infrastructure/scripts/llm-routing/templates/claude-free.cmd +80 -0
- package/.aios-core/infrastructure/scripts/llm-routing/templates/claude-free.sh +62 -0
- package/.aios-core/infrastructure/scripts/llm-routing/templates/claude-max.cmd +26 -0
- package/.aios-core/infrastructure/scripts/llm-routing/templates/claude-max.sh +18 -0
- package/.aios-core/infrastructure/scripts/modification-risk-assessment.js +970 -0
- package/.aios-core/infrastructure/scripts/modification-validator.js +555 -0
- package/.aios-core/infrastructure/scripts/output-formatter.js +297 -0
- package/.aios-core/infrastructure/scripts/performance-analyzer.js +758 -0
- package/.aios-core/infrastructure/scripts/performance-and-error-resolver.js +258 -0
- package/.aios-core/infrastructure/scripts/performance-optimizer.js +1902 -0
- package/.aios-core/infrastructure/scripts/performance-tracker.js +452 -0
- package/.aios-core/infrastructure/scripts/pm-adapter-factory.js +181 -0
- package/.aios-core/infrastructure/scripts/pm-adapter.js +134 -0
- package/.aios-core/infrastructure/scripts/project-status-loader.js +445 -0
- package/.aios-core/infrastructure/scripts/refactoring-suggester.js +1139 -0
- package/.aios-core/infrastructure/scripts/repository-detector.js +64 -0
- package/.aios-core/infrastructure/scripts/sandbox-tester.js +618 -0
- package/.aios-core/infrastructure/scripts/security-checker.js +359 -0
- package/.aios-core/infrastructure/scripts/source-tree-guardian/index.js +375 -0
- package/.aios-core/infrastructure/scripts/source-tree-guardian/manifest-generator.js +410 -0
- package/.aios-core/infrastructure/scripts/source-tree-guardian/rules/naming-rules.yaml +285 -0
- package/.aios-core/infrastructure/scripts/source-tree-guardian/rules/placement-rules.yaml +262 -0
- package/.aios-core/infrastructure/scripts/source-tree-guardian/validator.js +468 -0
- package/.aios-core/infrastructure/scripts/spot-check-validator.js +149 -0
- package/.aios-core/infrastructure/scripts/status-mapper.js +115 -0
- package/.aios-core/infrastructure/scripts/template-engine.js +240 -0
- package/.aios-core/infrastructure/scripts/template-validator.js +279 -0
- package/.aios-core/infrastructure/scripts/test-generator.js +844 -0
- package/.aios-core/infrastructure/scripts/test-quality-assessment.js +1081 -0
- package/.aios-core/infrastructure/scripts/test-utilities-fast.js +126 -0
- package/.aios-core/infrastructure/scripts/test-utilities.js +200 -0
- package/.aios-core/infrastructure/scripts/tool-resolver.js +360 -0
- package/.aios-core/infrastructure/scripts/transaction-manager.js +590 -0
- package/.aios-core/infrastructure/scripts/usage-analytics.js +634 -0
- package/.aios-core/infrastructure/scripts/validate-output-pattern.js +213 -0
- package/.aios-core/infrastructure/scripts/visual-impact-generator.js +1056 -0
- package/.aios-core/infrastructure/scripts/yaml-validator.js +397 -0
- package/.aios-core/infrastructure/templates/coderabbit.yaml.template +279 -0
- package/.aios-core/infrastructure/templates/core-config/core-config-brownfield.tmpl.yaml +182 -0
- package/.aios-core/infrastructure/templates/core-config/core-config-greenfield.tmpl.yaml +127 -0
- package/.aios-core/infrastructure/templates/github-workflows/README.md +109 -0
- package/.aios-core/infrastructure/templates/github-workflows/ci.yml.template +169 -0
- package/.aios-core/infrastructure/templates/github-workflows/pr-automation.yml.template +330 -0
- package/.aios-core/infrastructure/templates/github-workflows/release.yml.template +196 -0
- package/.aios-core/infrastructure/templates/gitignore/gitignore-aios-base.tmpl +63 -0
- package/.aios-core/infrastructure/templates/gitignore/gitignore-brownfield-merge.tmpl +18 -0
- package/.aios-core/infrastructure/templates/gitignore/gitignore-node.tmpl +85 -0
- package/.aios-core/infrastructure/templates/gitignore/gitignore-python.tmpl +145 -0
- package/.aios-core/infrastructure/templates/project-docs/coding-standards-tmpl.md +346 -0
- package/.aios-core/infrastructure/templates/project-docs/source-tree-tmpl.md +177 -0
- package/.aios-core/infrastructure/templates/project-docs/tech-stack-tmpl.md +267 -0
- package/.aios-core/infrastructure/tests/project-status-loader.test.js +394 -0
- package/.aios-core/infrastructure/tests/regression-suite-v2.md +621 -0
- package/.aios-core/infrastructure/tests/utilities-audit-results.json +501 -0
- package/.aios-core/infrastructure/tests/validate-module.js +97 -0
- package/.aios-core/infrastructure/tools/README.md +222 -0
- package/.aios-core/infrastructure/tools/cli/github-cli.yaml +200 -0
- package/.aios-core/infrastructure/tools/cli/llm-routing.yaml +126 -0
- package/.aios-core/infrastructure/tools/cli/railway-cli.yaml +260 -0
- package/.aios-core/infrastructure/tools/cli/supabase-cli.yaml +224 -0
- package/.aios-core/infrastructure/tools/local/ffmpeg.yaml +261 -0
- package/.aios-core/infrastructure/tools/mcp/21st-dev-magic.yaml +127 -0
- package/.aios-core/infrastructure/tools/mcp/browser.yaml +103 -0
- package/.aios-core/infrastructure/tools/mcp/clickup.yaml +534 -0
- package/.aios-core/infrastructure/tools/mcp/context7.yaml +78 -0
- package/.aios-core/infrastructure/tools/mcp/desktop-commander.yaml +180 -0
- package/.aios-core/infrastructure/tools/mcp/exa.yaml +103 -0
- package/.aios-core/infrastructure/tools/mcp/google-workspace.yaml +930 -0
- package/.aios-core/infrastructure/tools/mcp/n8n.yaml +551 -0
- package/.aios-core/infrastructure/tools/mcp/supabase.yaml +808 -0
- package/.aios-core/install-manifest.yaml +347 -0
- package/.aios-core/manifests/agents.csv +1 -0
- package/.aios-core/manifests/schema/manifest-schema.json +190 -0
- package/.aios-core/manifests/tasks.csv +121 -0
- package/.aios-core/manifests/workers.csv +204 -0
- package/.aios-core/package.json +103 -0
- package/.aios-core/product/README.md +56 -0
- package/.aios-core/product/checklists/architect-checklist.md +444 -0
- package/.aios-core/product/checklists/change-checklist.md +183 -0
- package/.aios-core/product/checklists/database-design-checklist.md +119 -0
- package/.aios-core/product/checklists/dba-predeploy-checklist.md +97 -0
- package/.aios-core/product/checklists/dba-rollback-checklist.md +99 -0
- package/.aios-core/product/checklists/pm-checklist.md +376 -0
- package/.aios-core/product/checklists/po-master-checklist.md +442 -0
- package/.aios-core/product/checklists/pre-push-checklist.md +108 -0
- package/.aios-core/product/checklists/release-checklist.md +122 -0
- package/.aios-core/product/checklists/story-dod-checklist.md +102 -0
- package/.aios-core/product/checklists/story-draft-checklist.md +216 -0
- package/.aios-core/product/data/brainstorming-techniques.md +37 -0
- package/.aios-core/product/data/elicitation-methods.md +135 -0
- package/.aios-core/product/data/mode-selection-best-practices.md +471 -0
- package/.aios-core/product/data/test-levels-framework.md +149 -0
- package/.aios-core/product/data/test-priorities-matrix.md +175 -0
- package/.aios-core/product/templates/1mcp-config.yaml +225 -0
- package/.aios-core/product/templates/activation-instructions-inline-greeting.yaml +63 -0
- package/.aios-core/product/templates/activation-instructions-template.md +258 -0
- package/.aios-core/product/templates/adr.hbs +125 -0
- package/.aios-core/product/templates/agent-template.yaml +121 -0
- package/.aios-core/product/templates/architecture-tmpl.yaml +651 -0
- package/.aios-core/product/templates/brainstorming-output-tmpl.yaml +156 -0
- package/.aios-core/product/templates/brownfield-architecture-tmpl.yaml +476 -0
- package/.aios-core/product/templates/brownfield-prd-tmpl.yaml +280 -0
- package/.aios-core/product/templates/changelog-template.md +134 -0
- package/.aios-core/product/templates/command-rationalization-matrix.md +152 -0
- package/.aios-core/product/templates/competitor-analysis-tmpl.yaml +293 -0
- package/.aios-core/product/templates/component-react-tmpl.tsx +98 -0
- package/.aios-core/product/templates/dbdr.hbs +241 -0
- package/.aios-core/product/templates/design-story-tmpl.yaml +587 -0
- package/.aios-core/product/templates/ds-artifact-analysis.md +70 -0
- package/.aios-core/product/templates/engine/elicitation.js +298 -0
- package/.aios-core/product/templates/engine/index.js +308 -0
- package/.aios-core/product/templates/engine/loader.js +231 -0
- package/.aios-core/product/templates/engine/renderer.js +343 -0
- package/.aios-core/product/templates/engine/schemas/adr.schema.json +102 -0
- package/.aios-core/product/templates/engine/schemas/dbdr.schema.json +205 -0
- package/.aios-core/product/templates/engine/schemas/epic.schema.json +175 -0
- package/.aios-core/product/templates/engine/schemas/pmdr.schema.json +175 -0
- package/.aios-core/product/templates/engine/schemas/prd-v2.schema.json +300 -0
- package/.aios-core/product/templates/engine/schemas/prd.schema.json +152 -0
- package/.aios-core/product/templates/engine/schemas/story.schema.json +222 -0
- package/.aios-core/product/templates/engine/schemas/task.schema.json +154 -0
- package/.aios-core/product/templates/engine/validator.js +294 -0
- package/.aios-core/product/templates/epic.hbs +212 -0
- package/.aios-core/product/templates/eslintrc-security.json +32 -0
- package/.aios-core/product/templates/front-end-architecture-tmpl.yaml +206 -0
- package/.aios-core/product/templates/front-end-spec-tmpl.yaml +349 -0
- package/.aios-core/product/templates/fullstack-architecture-tmpl.yaml +805 -0
- package/.aios-core/product/templates/github-actions-cd.yml +212 -0
- package/.aios-core/product/templates/github-actions-ci.yml +172 -0
- package/.aios-core/product/templates/github-pr-template.md +67 -0
- package/.aios-core/product/templates/gordon-mcp.yaml +140 -0
- package/.aios-core/product/templates/ide-rules/antigravity-rules.md +115 -0
- package/.aios-core/product/templates/ide-rules/claude-rules.md +221 -0
- package/.aios-core/product/templates/ide-rules/cline-rules.md +84 -0
- package/.aios-core/product/templates/ide-rules/copilot-rules.md +92 -0
- package/.aios-core/product/templates/ide-rules/cursor-rules.md +115 -0
- package/.aios-core/product/templates/ide-rules/gemini-rules.md +85 -0
- package/.aios-core/product/templates/ide-rules/roo-rules.md +86 -0
- package/.aios-core/product/templates/ide-rules/trae-rules.md +104 -0
- package/.aios-core/product/templates/ide-rules/windsurf-rules.md +80 -0
- package/.aios-core/product/templates/index-strategy-tmpl.yaml +53 -0
- package/.aios-core/product/templates/market-research-tmpl.yaml +252 -0
- package/.aios-core/product/templates/mcp-workflow.js +271 -0
- package/.aios-core/product/templates/migration-plan-tmpl.yaml +1022 -0
- package/.aios-core/product/templates/migration-strategy-tmpl.md +524 -0
- package/.aios-core/product/templates/personalized-agent-template.md +258 -0
- package/.aios-core/product/templates/personalized-checklist-template.md +340 -0
- package/.aios-core/product/templates/personalized-task-template-v2.md +905 -0
- package/.aios-core/product/templates/personalized-task-template.md +344 -0
- package/.aios-core/product/templates/personalized-template-file.yaml +322 -0
- package/.aios-core/product/templates/personalized-workflow-template.yaml +460 -0
- package/.aios-core/product/templates/pmdr.hbs +186 -0
- package/.aios-core/product/templates/prd-tmpl.yaml +202 -0
- package/.aios-core/product/templates/prd-v2.0.hbs +216 -0
- package/.aios-core/product/templates/prd.hbs +201 -0
- package/.aios-core/product/templates/project-brief-tmpl.yaml +221 -0
- package/.aios-core/product/templates/qa-gate-tmpl.yaml +240 -0
- package/.aios-core/product/templates/rls-policies-tmpl.yaml +1203 -0
- package/.aios-core/product/templates/schema-design-tmpl.yaml +428 -0
- package/.aios-core/product/templates/shock-report-tmpl.html +502 -0
- package/.aios-core/product/templates/state-persistence-tmpl.yaml +219 -0
- package/.aios-core/product/templates/story-tmpl.yaml +332 -0
- package/.aios-core/product/templates/story.hbs +263 -0
- package/.aios-core/product/templates/task-execution-report.md +495 -0
- package/.aios-core/product/templates/task-template.md +123 -0
- package/.aios-core/product/templates/task.hbs +170 -0
- package/.aios-core/product/templates/tmpl-comment-on-examples.sql +158 -0
- package/.aios-core/product/templates/tmpl-migration-script.sql +91 -0
- package/.aios-core/product/templates/tmpl-rls-granular-policies.sql +104 -0
- package/.aios-core/product/templates/tmpl-rls-kiss-policy.sql +10 -0
- package/.aios-core/product/templates/tmpl-rls-roles.sql +135 -0
- package/.aios-core/product/templates/tmpl-rls-simple.sql +77 -0
- package/.aios-core/product/templates/tmpl-rls-tenant.sql +152 -0
- package/.aios-core/product/templates/tmpl-rollback-script.sql +77 -0
- package/.aios-core/product/templates/tmpl-seed-data.sql +140 -0
- package/.aios-core/product/templates/tmpl-smoke-test.sql +16 -0
- package/.aios-core/product/templates/tmpl-staging-copy-merge.sql +139 -0
- package/.aios-core/product/templates/tmpl-stored-proc.sql +140 -0
- package/.aios-core/product/templates/tmpl-trigger.sql +152 -0
- package/.aios-core/product/templates/tmpl-view-materialized.sql +133 -0
- package/.aios-core/product/templates/tmpl-view.sql +177 -0
- package/.aios-core/product/templates/token-exports-css-tmpl.css +240 -0
- package/.aios-core/product/templates/token-exports-tailwind-tmpl.js +395 -0
- package/.aios-core/product/templates/tokens-schema-tmpl.yaml +305 -0
- package/.aios-core/product/templates/workflow-template.yaml +134 -0
- package/.aios-core/quality/metrics-collector.js +572 -0
- package/.aios-core/quality/metrics-hook.js +260 -0
- package/.aios-core/quality/schemas/quality-metrics.schema.json +233 -0
- package/.aios-core/quality/seed-metrics.js +336 -0
- package/.aios-core/scripts/README.md +354 -0
- package/.aios-core/scripts/aios-doc-template.md +325 -0
- package/.aios-core/scripts/batch-migrate-phase1.ps1 +36 -0
- package/.aios-core/scripts/batch-migrate-phase2.ps1 +88 -0
- package/.aios-core/scripts/batch-migrate-phase3.ps1 +45 -0
- package/.aios-core/scripts/command-execution-hook.js +201 -0
- package/.aios-core/scripts/context-detector.js +226 -0
- package/.aios-core/scripts/elicitation-engine.js +385 -0
- package/.aios-core/scripts/elicitation-session-manager.js +300 -0
- package/.aios-core/scripts/migrate-framework-docs.sh +300 -0
- package/.aios-core/scripts/session-context-loader.js +286 -0
- package/.aios-core/scripts/test-template-system.js +941 -0
- package/.aios-core/scripts/validate-phase1.ps1 +35 -0
- package/.aios-core/scripts/workflow-management.md +69 -0
- package/.aios-core/tasks/find-component.md.legacy +391 -0
- package/.aios-core/tasks/generate-commit-message.md.legacy +426 -0
- package/.aios-core/tasks/generate-migration.md.legacy +382 -0
- package/.aios-core/tasks/rollback-modification.md.legacy +307 -0
- package/.aios-core/tasks/update-tests.md.legacy +283 -0
- package/.aios-core/user-guide.md +1413 -0
- package/.aios-core/working-in-the-brownfield.md +361 -0
- package/.claude/CLAUDE.md +221 -0
- package/LICENSE +48 -0
- package/README.md +703 -0
- package/bin/aios-init-old.js +532 -0
- package/bin/aios-init-v4.js +390 -0
- package/bin/aios-init.backup-v1.1.4.js +352 -0
- package/bin/aios-init.js +736 -0
- package/bin/aios-minimal.js +26 -0
- package/bin/aios.js +279 -0
- package/bin/migrate-pm-config.js +219 -0
- package/bin/modules/env-config.js +436 -0
- package/bin/modules/mcp-installer.js +383 -0
- package/bin/utils/install-errors.js +339 -0
- package/bin/utils/install-transaction.js +445 -0
- package/index.d.ts +19 -0
- package/index.esm.js +21 -0
- package/index.js +94 -0
- package/package.json +161 -0
- package/packages/installer/package.json +39 -0
- package/packages/installer/src/config/configure-environment.js +312 -0
- package/packages/installer/src/config/templates/core-config-template.js +183 -0
- package/packages/installer/src/config/templates/env-template.js +127 -0
- package/packages/installer/src/config/validation/config-validator.js +243 -0
- package/packages/installer/src/detection/detect-project-type.js +81 -0
- package/packages/installer/src/wizard/wizard.js +244 -0
- package/packages/installer/tests/integration/environment-configuration.test.js +328 -0
- package/packages/installer/tests/integration/wizard-detection.test.js +349 -0
- package/packages/installer/tests/unit/config-validator.test.js +315 -0
- package/packages/installer/tests/unit/detection/detect-project-type.test.js +401 -0
- package/packages/installer/tests/unit/env-template.test.js +185 -0
- package/src/config/ide-configs.js +189 -0
- package/src/installer/aios-core-installer.js +319 -0
- package/src/installer/dependency-installer.js +335 -0
- package/src/utils/aios-colors.js +234 -0
- package/src/wizard/feedback.js +218 -0
- package/src/wizard/ide-config-generator.js +488 -0
- package/src/wizard/ide-selector.js +84 -0
- package/src/wizard/index.js +589 -0
- package/src/wizard/questions.js +249 -0
- package/src/wizard/validation/index.js +120 -0
- package/src/wizard/validation/report-generator.js +269 -0
- package/src/wizard/validation/troubleshooting-system.js +346 -0
- package/src/wizard/validation/validators/config-validator.js +362 -0
- package/src/wizard/validation/validators/dependency-validator.js +333 -0
- package/src/wizard/validation/validators/file-structure-validator.js +181 -0
- package/src/wizard/validation/validators/mcp-health-checker.js +310 -0
- package/src/wizard/validators.js +274 -0
- package/templates/squad/LICENSE +21 -0
- package/templates/squad/README.md +37 -0
- package/templates/squad/agents/example-agent.yaml +36 -0
- package/templates/squad/package.json +19 -0
- package/templates/squad/squad.yaml +25 -0
- package/templates/squad/tasks/example-task.yaml +46 -0
- package/templates/squad/templates/example-template.md +24 -0
- package/templates/squad/tests/example-agent.test.js +53 -0
- package/templates/squad/workflows/example-workflow.yaml +54 -0
- package/tools/package-builder.js +35 -0
|
@@ -0,0 +1,307 @@
|
|
|
1
|
+
# Session Update Pattern
|
|
2
|
+
|
|
3
|
+
**Integration Guide for Story 6.1.4**
|
|
4
|
+
|
|
5
|
+
## Overview
|
|
6
|
+
|
|
7
|
+
The session update pattern enables intelligent greeting adaptation by tracking command execution history and agent transitions. This allows AIOS to provide contextual greetings that reflect workflow continuity.
|
|
8
|
+
|
|
9
|
+
## Architecture
|
|
10
|
+
|
|
11
|
+
```
|
|
12
|
+
[Agent Activation] → [Generate Greeting] → [Execute Command] → [Update Session] → [Next Activation]
|
|
13
|
+
↑ ↓
|
|
14
|
+
└─────────── Session State ───────────────┘
|
|
15
|
+
```
|
|
16
|
+
|
|
17
|
+
## Integration Points
|
|
18
|
+
|
|
19
|
+
### 1. Command Execution Wrapper
|
|
20
|
+
|
|
21
|
+
All agent commands should be wrapped with session updates:
|
|
22
|
+
|
|
23
|
+
```javascript
|
|
24
|
+
const { updateSessionAfterCommand } = require('./.aios-core/scripts/command-execution-hook');
|
|
25
|
+
|
|
26
|
+
async function executeCommand(agentId, commandName, commandFn) {
|
|
27
|
+
try {
|
|
28
|
+
const result = await commandFn();
|
|
29
|
+
|
|
30
|
+
// Update session after successful execution
|
|
31
|
+
await updateSessionAfterCommand(agentId, commandName, { result });
|
|
32
|
+
|
|
33
|
+
return result;
|
|
34
|
+
} catch (error) {
|
|
35
|
+
// Still update session even on error
|
|
36
|
+
await updateSessionAfterCommand(agentId, commandName, {
|
|
37
|
+
result: { error: error.message }
|
|
38
|
+
});
|
|
39
|
+
throw error;
|
|
40
|
+
}
|
|
41
|
+
}
|
|
42
|
+
```
|
|
43
|
+
|
|
44
|
+
### 2. Agent Transition Tracking
|
|
45
|
+
|
|
46
|
+
When switching agents, record the transition:
|
|
47
|
+
|
|
48
|
+
```javascript
|
|
49
|
+
const { updateSessionAfterCommand } = require('./.aios-core/scripts/command-execution-hook');
|
|
50
|
+
|
|
51
|
+
async function switchAgent(fromAgent, toAgent) {
|
|
52
|
+
await updateSessionAfterCommand(toAgent, 'agent-activation', {
|
|
53
|
+
previousAgent: fromAgent
|
|
54
|
+
});
|
|
55
|
+
}
|
|
56
|
+
```
|
|
57
|
+
|
|
58
|
+
### 3. Session-Aware Greeting
|
|
59
|
+
|
|
60
|
+
The greeting system automatically uses session state:
|
|
61
|
+
|
|
62
|
+
```javascript
|
|
63
|
+
const { generateGreeting } = require('./.aios-core/scripts/generate-greeting');
|
|
64
|
+
|
|
65
|
+
// Session context is loaded automatically
|
|
66
|
+
const greeting = await generateGreeting('dev');
|
|
67
|
+
console.log(greeting);
|
|
68
|
+
```
|
|
69
|
+
|
|
70
|
+
## Session State Structure
|
|
71
|
+
|
|
72
|
+
```json
|
|
73
|
+
{
|
|
74
|
+
"sessionType": "workflow",
|
|
75
|
+
"currentAgent": "dev",
|
|
76
|
+
"previousAgent": "qa",
|
|
77
|
+
"commandHistory": [
|
|
78
|
+
{
|
|
79
|
+
"command": "review",
|
|
80
|
+
"agent": "qa",
|
|
81
|
+
"timestamp": 1234567890,
|
|
82
|
+
"success": true
|
|
83
|
+
},
|
|
84
|
+
{
|
|
85
|
+
"command": "apply-qa-fixes",
|
|
86
|
+
"agent": "dev",
|
|
87
|
+
"timestamp": 1234567900,
|
|
88
|
+
"success": true
|
|
89
|
+
}
|
|
90
|
+
],
|
|
91
|
+
"agentTransitions": [
|
|
92
|
+
{
|
|
93
|
+
"from": "qa",
|
|
94
|
+
"to": "dev",
|
|
95
|
+
"timestamp": 1234567895
|
|
96
|
+
}
|
|
97
|
+
],
|
|
98
|
+
"createdAt": 1234567800,
|
|
99
|
+
"lastUpdated": 1234567900
|
|
100
|
+
}
|
|
101
|
+
```
|
|
102
|
+
|
|
103
|
+
## Session Types
|
|
104
|
+
|
|
105
|
+
### New Session
|
|
106
|
+
- **Criteria:** No command history
|
|
107
|
+
- **Greeting:** Full introduction, all commands, project status
|
|
108
|
+
- **Use Case:** First interaction in conversation
|
|
109
|
+
|
|
110
|
+
### Existing Session
|
|
111
|
+
- **Criteria:** 1-2 commands in history
|
|
112
|
+
- **Greeting:** Quick commands only, abbreviated status
|
|
113
|
+
- **Use Case:** User returning to same agent
|
|
114
|
+
|
|
115
|
+
### Workflow Session
|
|
116
|
+
- **Criteria:** 3+ commands OR agent transitions
|
|
117
|
+
- **Greeting:** Minimal presentation, workflow suggestions
|
|
118
|
+
- **Use Case:** Multi-agent collaboration flow
|
|
119
|
+
|
|
120
|
+
## Implementation Checklist
|
|
121
|
+
|
|
122
|
+
### Phase 1: Core Integration (Story 6.1.4)
|
|
123
|
+
- [x] Create `command-execution-hook.js`
|
|
124
|
+
- [x] Update `generate-greeting.js` to load session
|
|
125
|
+
- [x] Modify `greeting-builder.js` to adapt to session type
|
|
126
|
+
- [ ] Document pattern (this file)
|
|
127
|
+
|
|
128
|
+
### Phase 2: Agent Integration (Future)
|
|
129
|
+
- [ ] Wrap QA commands with session updates
|
|
130
|
+
- [ ] Wrap Dev commands with session updates
|
|
131
|
+
- [ ] Wrap PM/PO/SM commands with session updates
|
|
132
|
+
- [ ] Add agent transition tracking to `/AIOS/agents/*` commands
|
|
133
|
+
|
|
134
|
+
### Phase 3: Advanced Features (Future)
|
|
135
|
+
- [ ] Workflow pattern detection (e.g., "QA → Dev → QA" cycle)
|
|
136
|
+
- [ ] Smart command suggestions based on history
|
|
137
|
+
- [ ] Session persistence across conversations
|
|
138
|
+
- [ ] Analytics dashboard for common workflows
|
|
139
|
+
|
|
140
|
+
## Usage Examples
|
|
141
|
+
|
|
142
|
+
### Example 1: Single Agent Session
|
|
143
|
+
|
|
144
|
+
```javascript
|
|
145
|
+
// First activation
|
|
146
|
+
await updateSessionAfterCommand('dev', 'agent-activation');
|
|
147
|
+
// → sessionType: 'new'
|
|
148
|
+
|
|
149
|
+
// Execute command
|
|
150
|
+
await updateSessionAfterCommand('dev', 'develop-yolo');
|
|
151
|
+
// → sessionType: 'existing'
|
|
152
|
+
|
|
153
|
+
// Next activation shows abbreviated greeting
|
|
154
|
+
const greeting = await generateGreeting('dev');
|
|
155
|
+
// Uses 'existing' session type
|
|
156
|
+
```
|
|
157
|
+
|
|
158
|
+
### Example 2: Multi-Agent Workflow
|
|
159
|
+
|
|
160
|
+
```javascript
|
|
161
|
+
// QA reviews code
|
|
162
|
+
await updateSessionAfterCommand('qa', 'review');
|
|
163
|
+
// → sessionType: 'existing'
|
|
164
|
+
|
|
165
|
+
// QA finds issues
|
|
166
|
+
await updateSessionAfterCommand('qa', 'gate');
|
|
167
|
+
// → sessionType: 'existing'
|
|
168
|
+
|
|
169
|
+
// Switch to Dev
|
|
170
|
+
await updateSessionAfterCommand('dev', 'agent-activation', {
|
|
171
|
+
previousAgent: 'qa'
|
|
172
|
+
});
|
|
173
|
+
// → sessionType: 'workflow' (agent transition detected)
|
|
174
|
+
|
|
175
|
+
// Dev applies fixes
|
|
176
|
+
await updateSessionAfterCommand('dev', 'apply-qa-fixes');
|
|
177
|
+
// → sessionType: 'workflow'
|
|
178
|
+
|
|
179
|
+
// Next greeting shows workflow context
|
|
180
|
+
const greeting = await generateGreeting('dev');
|
|
181
|
+
// Includes: "Continuing from @qa review..."
|
|
182
|
+
```
|
|
183
|
+
|
|
184
|
+
## Performance Considerations
|
|
185
|
+
|
|
186
|
+
### Session File Location
|
|
187
|
+
- **Path:** `.aios-core/.session/current-session.json`
|
|
188
|
+
- **Size:** ~1-2KB (with history limit)
|
|
189
|
+
- **I/O:** Read on greeting, write after command
|
|
190
|
+
- **Impact:** <10ms per operation
|
|
191
|
+
|
|
192
|
+
### Caching Strategy
|
|
193
|
+
Session state is not cached (always fresh reads) to ensure accuracy across:
|
|
194
|
+
- Multiple terminal sessions
|
|
195
|
+
- Concurrent agent activations
|
|
196
|
+
- Manual session edits
|
|
197
|
+
|
|
198
|
+
### Error Handling
|
|
199
|
+
All session operations are non-blocking:
|
|
200
|
+
- Failed reads → Default to 'new' session
|
|
201
|
+
- Failed writes → Log warning, continue execution
|
|
202
|
+
- Corrupted JSON → Reset to empty session
|
|
203
|
+
|
|
204
|
+
## Testing
|
|
205
|
+
|
|
206
|
+
### Unit Tests
|
|
207
|
+
```bash
|
|
208
|
+
node tests/unit/command-execution-hook.test.js
|
|
209
|
+
```
|
|
210
|
+
|
|
211
|
+
### Integration Tests
|
|
212
|
+
```bash
|
|
213
|
+
node tests/integration/session-workflow.test.js
|
|
214
|
+
```
|
|
215
|
+
|
|
216
|
+
### Manual Testing
|
|
217
|
+
```bash
|
|
218
|
+
# Clear session
|
|
219
|
+
rm .aios-core/.session/current-session.json
|
|
220
|
+
|
|
221
|
+
# Test new session
|
|
222
|
+
node .aios-core/scripts/generate-greeting.js dev
|
|
223
|
+
|
|
224
|
+
# Simulate command
|
|
225
|
+
node -e "require('./.aios-core/scripts/command-execution-hook').updateSessionAfterCommand('dev', 'develop-yolo')"
|
|
226
|
+
|
|
227
|
+
# Test existing session
|
|
228
|
+
node .aios-core/scripts/generate-greeting.js dev
|
|
229
|
+
```
|
|
230
|
+
|
|
231
|
+
## Troubleshooting
|
|
232
|
+
|
|
233
|
+
### Session Not Updating
|
|
234
|
+
**Symptom:** Greetings always show "new" session
|
|
235
|
+
**Solution:** Check session file permissions and path
|
|
236
|
+
|
|
237
|
+
```bash
|
|
238
|
+
ls -la .aios-core/.session/
|
|
239
|
+
cat .aios-core/.session/current-session.json
|
|
240
|
+
```
|
|
241
|
+
|
|
242
|
+
### Wrong Session Type
|
|
243
|
+
**Symptom:** Workflow session detected too early/late
|
|
244
|
+
**Solution:** Adjust thresholds in `determineSessionType()`
|
|
245
|
+
|
|
246
|
+
```javascript
|
|
247
|
+
// In command-execution-hook.js
|
|
248
|
+
function determineSessionType(commandHistory) {
|
|
249
|
+
if (commandHistory.length >= 3) { // Adjust this threshold
|
|
250
|
+
return 'workflow';
|
|
251
|
+
}
|
|
252
|
+
// ...
|
|
253
|
+
}
|
|
254
|
+
```
|
|
255
|
+
|
|
256
|
+
### Commands Not Tracked
|
|
257
|
+
**Symptom:** Command history empty
|
|
258
|
+
**Solution:** Ensure commands call `updateSessionAfterCommand()`
|
|
259
|
+
|
|
260
|
+
```javascript
|
|
261
|
+
// Add to command wrapper
|
|
262
|
+
await updateSessionAfterCommand(agentId, commandName);
|
|
263
|
+
```
|
|
264
|
+
|
|
265
|
+
## Migration Notes
|
|
266
|
+
|
|
267
|
+
### From Inline Greeting Logic
|
|
268
|
+
Old approach (deprecated):
|
|
269
|
+
```javascript
|
|
270
|
+
// STEP 3: Generate contextual greeting using inline logic
|
|
271
|
+
// 1. Detect session type from conversation history...
|
|
272
|
+
```
|
|
273
|
+
|
|
274
|
+
New approach (Story 6.1.4):
|
|
275
|
+
```javascript
|
|
276
|
+
// STEP 3: Execute unified greeting generator
|
|
277
|
+
node .aios-core/scripts/generate-greeting.js [agent-id]
|
|
278
|
+
```
|
|
279
|
+
|
|
280
|
+
### Backward Compatibility
|
|
281
|
+
- Session updates are optional (system defaults to 'new')
|
|
282
|
+
- Agents work without integration (degraded UX only)
|
|
283
|
+
- No breaking changes to existing commands
|
|
284
|
+
|
|
285
|
+
## Future Enhancements
|
|
286
|
+
|
|
287
|
+
### Planned (Post-Story 6.1.4)
|
|
288
|
+
1. **Workflow Pattern Library:** Detect common sequences (e.g., "review → fix → test")
|
|
289
|
+
2. **Smart Suggestions:** Recommend next command based on history
|
|
290
|
+
3. **Session Analytics:** Track which workflows are most common
|
|
291
|
+
4. **Cross-Conversation Persistence:** Link sessions across Claude conversations
|
|
292
|
+
|
|
293
|
+
### Under Consideration
|
|
294
|
+
- Session branching for parallel workflows
|
|
295
|
+
- Command rollback/undo tracking
|
|
296
|
+
- Session export for debugging
|
|
297
|
+
- Real-time session dashboard
|
|
298
|
+
|
|
299
|
+
---
|
|
300
|
+
|
|
301
|
+
**Related Documentation:**
|
|
302
|
+
- [Story 6.1.4 Implementation](../../stories/aios migration/story-6.1.4.md)
|
|
303
|
+
- [Agent Configuration Guide](../config/agent-config-requirements.yaml)
|
|
304
|
+
- [Greeting System Architecture](./greeting-system-architecture.md)
|
|
305
|
+
|
|
306
|
+
**Last Updated:** 2025-01-18 (Story 6.1.4)
|
|
307
|
+
|
|
@@ -0,0 +1,267 @@
|
|
|
1
|
+
# Template Variable Syntax Guide
|
|
2
|
+
|
|
3
|
+
## Overview
|
|
4
|
+
|
|
5
|
+
The AIOS-FULLSTACK template system uses a simple yet powerful variable substitution syntax that allows for dynamic content generation in agents, tasks, and workflows.
|
|
6
|
+
|
|
7
|
+
## Basic Variable Substitution
|
|
8
|
+
|
|
9
|
+
Variables are enclosed in double curly braces:
|
|
10
|
+
|
|
11
|
+
```
|
|
12
|
+
{{VARIABLE_NAME}}
|
|
13
|
+
```
|
|
14
|
+
|
|
15
|
+
### Example:
|
|
16
|
+
```yaml
|
|
17
|
+
agent:
|
|
18
|
+
name: {{AGENT_NAME}}
|
|
19
|
+
title: {{AGENT_TITLE}}
|
|
20
|
+
icon: {{AGENT_ICON}}
|
|
21
|
+
```
|
|
22
|
+
|
|
23
|
+
## Conditional Blocks
|
|
24
|
+
|
|
25
|
+
Conditionals allow content to be included or excluded based on boolean variables:
|
|
26
|
+
|
|
27
|
+
```
|
|
28
|
+
{{#IF_VARIABLE}}
|
|
29
|
+
Content to include if VARIABLE is true
|
|
30
|
+
{{/IF_VARIABLE}}
|
|
31
|
+
```
|
|
32
|
+
|
|
33
|
+
### Example:
|
|
34
|
+
```yaml
|
|
35
|
+
{{#IF_SECURITY}}
|
|
36
|
+
security:
|
|
37
|
+
level: {{SECURITY_LEVEL}}
|
|
38
|
+
requiresApproval: {{REQUIRES_APPROVAL}}
|
|
39
|
+
{{/IF_SECURITY}}
|
|
40
|
+
```
|
|
41
|
+
|
|
42
|
+
## Loops
|
|
43
|
+
|
|
44
|
+
Loops iterate over arrays to generate repeated content:
|
|
45
|
+
|
|
46
|
+
```
|
|
47
|
+
{{#EACH_ITEMS}}
|
|
48
|
+
- {{ITEM}}
|
|
49
|
+
{{/EACH_ITEMS}}
|
|
50
|
+
```
|
|
51
|
+
|
|
52
|
+
### Loop Variables:
|
|
53
|
+
- `{{ITEM}}` - Current item value
|
|
54
|
+
- `{{INDEX}}` - Current item index (0-based)
|
|
55
|
+
- `{{#IF_FIRST}}` - True for first item
|
|
56
|
+
- `{{#IF_LAST}}` - True for last item
|
|
57
|
+
- `{{#UNLESS_LAST}}` - True for all except last item
|
|
58
|
+
|
|
59
|
+
### Example with Objects:
|
|
60
|
+
```yaml
|
|
61
|
+
commands:
|
|
62
|
+
{{#EACH_COMMANDS}}
|
|
63
|
+
- name: {{COMMAND_NAME}}
|
|
64
|
+
description: {{COMMAND_DESCRIPTION}}
|
|
65
|
+
{{#IF_COMMAND_PARAMS}}
|
|
66
|
+
parameters:
|
|
67
|
+
{{#EACH_COMMAND_PARAMS}}
|
|
68
|
+
- {{PARAM_NAME}}: {{PARAM_TYPE}}
|
|
69
|
+
{{/EACH_COMMAND_PARAMS}}
|
|
70
|
+
{{/IF_COMMAND_PARAMS}}
|
|
71
|
+
{{/EACH_COMMANDS}}
|
|
72
|
+
```
|
|
73
|
+
|
|
74
|
+
## Nested Structures
|
|
75
|
+
|
|
76
|
+
Templates support nested conditionals and loops:
|
|
77
|
+
|
|
78
|
+
```yaml
|
|
79
|
+
{{#IF_WORKFLOWS}}
|
|
80
|
+
workflows:
|
|
81
|
+
{{#EACH_WORKFLOWS}}
|
|
82
|
+
- id: {{WORKFLOW_ID}}
|
|
83
|
+
name: {{WORKFLOW_NAME}}
|
|
84
|
+
{{#IF_WORKFLOW_STEPS}}
|
|
85
|
+
steps:
|
|
86
|
+
{{#EACH_WORKFLOW_STEPS}}
|
|
87
|
+
- name: {{STEP_NAME}}
|
|
88
|
+
task: {{STEP_TASK}}
|
|
89
|
+
{{#IF_STEP_CONDITION}}
|
|
90
|
+
condition: {{STEP_CONDITION}}
|
|
91
|
+
{{/IF_STEP_CONDITION}}
|
|
92
|
+
{{/EACH_WORKFLOW_STEPS}}
|
|
93
|
+
{{/IF_WORKFLOW_STEPS}}
|
|
94
|
+
{{/EACH_WORKFLOWS}}
|
|
95
|
+
{{/IF_WORKFLOWS}}
|
|
96
|
+
```
|
|
97
|
+
|
|
98
|
+
## Special Characters
|
|
99
|
+
|
|
100
|
+
### Escaping Braces
|
|
101
|
+
To include literal braces in your output, escape them with backslashes:
|
|
102
|
+
|
|
103
|
+
```
|
|
104
|
+
This is a literal \{{variable}} that won't be replaced
|
|
105
|
+
```
|
|
106
|
+
|
|
107
|
+
### Handling Quotes
|
|
108
|
+
Variables containing quotes are automatically handled:
|
|
109
|
+
|
|
110
|
+
```yaml
|
|
111
|
+
description: "{{DESCRIPTION}}"
|
|
112
|
+
```
|
|
113
|
+
|
|
114
|
+
If `DESCRIPTION` contains quotes, they will be properly escaped.
|
|
115
|
+
|
|
116
|
+
## Variable Naming Conventions
|
|
117
|
+
|
|
118
|
+
1. **Use UPPERCASE_WITH_UNDERSCORES** for all variables
|
|
119
|
+
2. **Conditional variables** should start with `IF_`
|
|
120
|
+
3. **Loop variables** should start with `EACH_`
|
|
121
|
+
4. **Boolean negation** uses `UNLESS_`
|
|
122
|
+
|
|
123
|
+
### Standard Variable Prefixes:
|
|
124
|
+
- `IF_` - Boolean conditions
|
|
125
|
+
- `EACH_` - Array iterations
|
|
126
|
+
- `UNLESS_` - Negative conditions
|
|
127
|
+
- `HAS_` - Existence checks
|
|
128
|
+
- `IS_` - State checks
|
|
129
|
+
|
|
130
|
+
## Common Template Variables
|
|
131
|
+
|
|
132
|
+
### Agent Templates:
|
|
133
|
+
- `AGENT_NAME` - Lowercase hyphenated name
|
|
134
|
+
- `AGENT_TITLE` - Human-readable title
|
|
135
|
+
- `AGENT_ID` - Unique identifier
|
|
136
|
+
- `AGENT_ICON` - Emoji or icon
|
|
137
|
+
- `WHEN_TO_USE` - Usage description
|
|
138
|
+
- `EACH_COMMANDS` - Command array
|
|
139
|
+
- `IF_PERSONA` - Has persona configuration
|
|
140
|
+
- `PERSONA_TONE` - Communication tone
|
|
141
|
+
- `PERSONA_VERBOSITY` - Response detail level
|
|
142
|
+
|
|
143
|
+
### Task Templates:
|
|
144
|
+
- `TASK_ID` - Task identifier
|
|
145
|
+
- `TASK_TITLE` - Task title
|
|
146
|
+
- `AGENT_NAME` - Associated agent
|
|
147
|
+
- `TASK_DESCRIPTION` - Task description
|
|
148
|
+
- `EACH_STEPS` - Process steps
|
|
149
|
+
- `EACH_PREREQUISITES` - Requirements
|
|
150
|
+
- `EACH_INPUTS` - Input parameters
|
|
151
|
+
|
|
152
|
+
### Workflow Templates:
|
|
153
|
+
- `WORKFLOW_ID` - Workflow identifier
|
|
154
|
+
- `WORKFLOW_NAME` - Workflow name
|
|
155
|
+
- `WORKFLOW_TYPE` - sequential/parallel
|
|
156
|
+
- `EACH_STEPS` - Workflow steps
|
|
157
|
+
- `TRIGGER_TYPE` - Trigger mechanism
|
|
158
|
+
|
|
159
|
+
## Advanced Features
|
|
160
|
+
|
|
161
|
+
### Conditional with Defaults
|
|
162
|
+
```yaml
|
|
163
|
+
priority: {{#IF_PRIORITY}}{{PRIORITY}}{{/IF_PRIORITY}}{{#UNLESS_PRIORITY}}medium{{/UNLESS_PRIORITY}}
|
|
164
|
+
```
|
|
165
|
+
|
|
166
|
+
### Complex Object Arrays
|
|
167
|
+
```yaml
|
|
168
|
+
{{#EACH_COMPONENTS}}
|
|
169
|
+
- type: {{COMPONENT_TYPE}}
|
|
170
|
+
name: {{COMPONENT_NAME}}
|
|
171
|
+
{{#IF_COMPONENT_CONFIG}}
|
|
172
|
+
config:
|
|
173
|
+
{{#EACH_CONFIG_ITEMS}}
|
|
174
|
+
{{CONFIG_KEY}}: {{CONFIG_VALUE}}
|
|
175
|
+
{{/EACH_CONFIG_ITEMS}}
|
|
176
|
+
{{/IF_COMPONENT_CONFIG}}
|
|
177
|
+
{{/EACH_COMPONENTS}}
|
|
178
|
+
```
|
|
179
|
+
|
|
180
|
+
### Preserving Indentation
|
|
181
|
+
The template engine preserves indentation within loops:
|
|
182
|
+
|
|
183
|
+
```yaml
|
|
184
|
+
services:
|
|
185
|
+
{{#EACH_SERVICES}}
|
|
186
|
+
- name: {{SERVICE_NAME}}
|
|
187
|
+
port: {{SERVICE_PORT}}
|
|
188
|
+
{{#IF_SERVICE_ENV}}
|
|
189
|
+
environment:
|
|
190
|
+
{{#EACH_SERVICE_ENV_VARS}}
|
|
191
|
+
{{ENV_KEY}}: {{ENV_VALUE}}
|
|
192
|
+
{{/EACH_SERVICE_ENV_VARS}}
|
|
193
|
+
{{/IF_SERVICE_ENV}}
|
|
194
|
+
{{/EACH_SERVICES}}
|
|
195
|
+
```
|
|
196
|
+
|
|
197
|
+
## Best Practices
|
|
198
|
+
|
|
199
|
+
1. **Always validate variable names** before template processing
|
|
200
|
+
2. **Use meaningful variable names** that describe their content
|
|
201
|
+
3. **Group related variables** with common prefixes
|
|
202
|
+
4. **Document required vs optional variables** in templates
|
|
203
|
+
5. **Test templates with edge cases** (empty arrays, missing values)
|
|
204
|
+
|
|
205
|
+
## Error Handling
|
|
206
|
+
|
|
207
|
+
The template engine handles errors gracefully:
|
|
208
|
+
- Missing variables are left as-is: `{{MISSING_VAR}}`
|
|
209
|
+
- Malformed conditionals are preserved in output
|
|
210
|
+
- Empty arrays result in no output for that section
|
|
211
|
+
- Null/undefined values are converted to empty strings
|
|
212
|
+
|
|
213
|
+
## Examples
|
|
214
|
+
|
|
215
|
+
### Complete Agent Template Example:
|
|
216
|
+
```yaml
|
|
217
|
+
# {{AGENT_TITLE}}
|
|
218
|
+
|
|
219
|
+
**Agent ID:** {{AGENT_ID}}
|
|
220
|
+
**Agent Name:** {{AGENT_NAME}}
|
|
221
|
+
|
|
222
|
+
## When to Use
|
|
223
|
+
{{WHEN_TO_USE}}
|
|
224
|
+
|
|
225
|
+
## Icon
|
|
226
|
+
{{AGENT_ICON}}
|
|
227
|
+
|
|
228
|
+
{{#IF_COMMANDS}}
|
|
229
|
+
## Commands
|
|
230
|
+
{{#EACH_COMMANDS}}
|
|
231
|
+
- `{{COMMAND_NAME}}`: {{COMMAND_DESCRIPTION}}
|
|
232
|
+
{{/EACH_COMMANDS}}
|
|
233
|
+
{{/IF_COMMANDS}}
|
|
234
|
+
|
|
235
|
+
{{#IF_PERSONA}}
|
|
236
|
+
## Persona
|
|
237
|
+
**Tone:** {{PERSONA_TONE}}
|
|
238
|
+
**Verbosity:** {{PERSONA_VERBOSITY}}
|
|
239
|
+
{{#IF_PERSONA_INSTRUCTIONS}}
|
|
240
|
+
|
|
241
|
+
### Special Instructions
|
|
242
|
+
{{PERSONA_INSTRUCTIONS}}
|
|
243
|
+
{{/IF_PERSONA_INSTRUCTIONS}}
|
|
244
|
+
{{/IF_PERSONA}}
|
|
245
|
+
|
|
246
|
+
{{#IF_SECURITY}}
|
|
247
|
+
## Security Configuration
|
|
248
|
+
**Level:** {{SECURITY_LEVEL}}
|
|
249
|
+
**Requires Approval:** {{REQUIRES_APPROVAL}}
|
|
250
|
+
{{/IF_SECURITY}}
|
|
251
|
+
```
|
|
252
|
+
|
|
253
|
+
## Troubleshooting
|
|
254
|
+
|
|
255
|
+
### Common Issues:
|
|
256
|
+
|
|
257
|
+
1. **Variables not replaced**: Check for typos in variable names
|
|
258
|
+
2. **Conditionals not working**: Ensure closing tags match opening tags
|
|
259
|
+
3. **Loops producing no output**: Verify array variable exists and has items
|
|
260
|
+
4. **Indentation issues**: Check that loop content maintains consistent spacing
|
|
261
|
+
5. **Escaped characters appearing**: Use double backslashes for literal output
|
|
262
|
+
|
|
263
|
+
### Debug Mode:
|
|
264
|
+
Enable template debugging by setting `DEBUG_TEMPLATES=true` to see:
|
|
265
|
+
- Variable resolution process
|
|
266
|
+
- Conditional evaluation
|
|
267
|
+
- Loop iteration details
|