moai-adk 0.9.1__py3-none-any.whl → 0.11.0__py3-none-any.whl
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.
Potentially problematic release.
This version of moai-adk might be problematic. Click here for more details.
- moai_adk/core/project/phase_executor.py +4 -0
- moai_adk/core/tags/ci_validator.py +33 -3
- moai_adk/core/template_engine.py +6 -2
- moai_adk/templates/.git-hooks/pre-push +143 -0
- moai_adk/templates/.github/workflows/moai-gitflow.yml +6 -1
- moai_adk/templates/.github/workflows/release.yml +6 -2
- moai_adk/templates/.github/workflows/tag-validation.yml +57 -8
- moai_adk/templates/CLAUDE.md +477 -28
- moai_adk/templates/README.md +256 -0
- {moai_adk-0.9.1.dist-info → moai_adk-0.11.0.dist-info}/METADATA +740 -90
- moai_adk-0.11.0.dist-info/RECORD +77 -0
- moai_adk/templates/.claude/agents/alfred/cc-manager.md +0 -316
- moai_adk/templates/.claude/agents/alfred/debug-helper.md +0 -208
- moai_adk/templates/.claude/agents/alfred/doc-syncer.md +0 -214
- moai_adk/templates/.claude/agents/alfred/git-manager.md +0 -406
- moai_adk/templates/.claude/agents/alfred/implementation-planner.md +0 -350
- moai_adk/templates/.claude/agents/alfred/project-manager.md +0 -273
- moai_adk/templates/.claude/agents/alfred/quality-gate.md +0 -343
- moai_adk/templates/.claude/agents/alfred/skill-factory.md +0 -865
- moai_adk/templates/.claude/agents/alfred/spec-builder.md +0 -287
- moai_adk/templates/.claude/agents/alfred/tag-agent.md +0 -287
- moai_adk/templates/.claude/agents/alfred/tdd-implementer.md +0 -326
- moai_adk/templates/.claude/agents/alfred/trust-checker.md +0 -375
- moai_adk/templates/.claude/commands/alfred/0-project.md +0 -1189
- moai_adk/templates/.claude/commands/alfred/1-plan.md +0 -728
- moai_adk/templates/.claude/commands/alfred/2-run.md +0 -545
- moai_adk/templates/.claude/commands/alfred/3-sync.md +0 -683
- moai_adk/templates/.claude/commands/alfred/9-feedback.md +0 -149
- moai_adk/templates/.claude/hooks/alfred/.moai/cache/version-check.json +0 -9
- moai_adk/templates/.claude/hooks/alfred/README.md +0 -343
- moai_adk/templates/.claude/hooks/alfred/TROUBLESHOOTING.md +0 -471
- moai_adk/templates/.claude/hooks/alfred/alfred_hooks.py +0 -209
- moai_adk/templates/.claude/hooks/alfred/core/version_cache.py +0 -198
- moai_adk/templates/.claude/hooks/alfred/notification__handle_events.py +0 -102
- moai_adk/templates/.claude/hooks/alfred/post_tool__log_changes.py +0 -102
- moai_adk/templates/.claude/hooks/alfred/pre_tool__auto_checkpoint.py +0 -108
- moai_adk/templates/.claude/hooks/alfred/session_end__cleanup.py +0 -102
- moai_adk/templates/.claude/hooks/alfred/session_start__show_project_info.py +0 -102
- moai_adk/templates/.claude/hooks/alfred/shared/core/__init__.py +0 -170
- moai_adk/templates/.claude/hooks/alfred/shared/core/checkpoint.py +0 -271
- moai_adk/templates/.claude/hooks/alfred/shared/core/context.py +0 -67
- moai_adk/templates/.claude/hooks/alfred/shared/core/project.py +0 -683
- moai_adk/templates/.claude/hooks/alfred/shared/core/tags.py +0 -198
- moai_adk/templates/.claude/hooks/alfred/shared/core/version_cache.py +0 -198
- moai_adk/templates/.claude/hooks/alfred/shared/handlers/__init__.py +0 -21
- moai_adk/templates/.claude/hooks/alfred/shared/handlers/notification.py +0 -25
- moai_adk/templates/.claude/hooks/alfred/shared/handlers/session.py +0 -175
- moai_adk/templates/.claude/hooks/alfred/shared/handlers/tool.py +0 -90
- moai_adk/templates/.claude/hooks/alfred/shared/handlers/user.py +0 -61
- moai_adk/templates/.claude/hooks/alfred/stop__handle_interrupt.py +0 -102
- moai_adk/templates/.claude/hooks/alfred/subagent_stop__handle_subagent_end.py +0 -102
- moai_adk/templates/.claude/hooks/alfred/user_prompt__jit_load_docs.py +0 -120
- moai_adk/templates/.claude/output-styles/alfred/agentic-coding.md +0 -640
- moai_adk/templates/.claude/output-styles/alfred/moai-adk-learning.md +0 -696
- moai_adk/templates/.claude/output-styles/alfred/study-with-alfred.md +0 -474
- moai_adk/templates/.claude/settings.json +0 -144
- moai_adk/templates/.claude/skills/moai-alfred-ears-authoring/SKILL.md +0 -113
- moai_adk/templates/.claude/skills/moai-alfred-ears-authoring/examples.md +0 -29
- moai_adk/templates/.claude/skills/moai-alfred-ears-authoring/reference.md +0 -28
- moai_adk/templates/.claude/skills/moai-alfred-git-workflow/SKILL.md +0 -122
- moai_adk/templates/.claude/skills/moai-alfred-git-workflow/examples.md +0 -29
- moai_adk/templates/.claude/skills/moai-alfred-git-workflow/reference.md +0 -29
- moai_adk/templates/.claude/skills/moai-alfred-interactive-questions/SKILL.md +0 -237
- moai_adk/templates/.claude/skills/moai-alfred-interactive-questions/examples.md +0 -615
- moai_adk/templates/.claude/skills/moai-alfred-interactive-questions/reference.md +0 -653
- moai_adk/templates/.claude/skills/moai-alfred-language-detection/SKILL.md +0 -113
- moai_adk/templates/.claude/skills/moai-alfred-language-detection/examples.md +0 -29
- moai_adk/templates/.claude/skills/moai-alfred-language-detection/reference.md +0 -28
- moai_adk/templates/.claude/skills/moai-alfred-spec-metadata-validation/SKILL.md +0 -113
- moai_adk/templates/.claude/skills/moai-alfred-spec-metadata-validation/examples.md +0 -29
- moai_adk/templates/.claude/skills/moai-alfred-spec-metadata-validation/reference.md +0 -28
- moai_adk/templates/.claude/skills/moai-alfred-tag-scanning/SKILL.md +0 -113
- moai_adk/templates/.claude/skills/moai-alfred-tag-scanning/examples.md +0 -29
- moai_adk/templates/.claude/skills/moai-alfred-tag-scanning/reference.md +0 -28
- moai_adk/templates/.claude/skills/moai-alfred-trust-validation/SKILL.md +0 -113
- moai_adk/templates/.claude/skills/moai-alfred-trust-validation/examples.md +0 -29
- moai_adk/templates/.claude/skills/moai-alfred-trust-validation/reference.md +0 -28
- moai_adk/templates/.claude/skills/moai-cc-agents/SKILL.md +0 -269
- moai_adk/templates/.claude/skills/moai-cc-agents/templates/agent-template.md +0 -32
- moai_adk/templates/.claude/skills/moai-cc-claude-md/SKILL.md +0 -298
- moai_adk/templates/.claude/skills/moai-cc-claude-md/templates/CLAUDE-template.md +0 -26
- moai_adk/templates/.claude/skills/moai-cc-commands/SKILL.md +0 -307
- moai_adk/templates/.claude/skills/moai-cc-commands/templates/command-template.md +0 -21
- moai_adk/templates/.claude/skills/moai-cc-hooks/SKILL.md +0 -252
- moai_adk/templates/.claude/skills/moai-cc-hooks/scripts/pre-bash-check.sh +0 -19
- moai_adk/templates/.claude/skills/moai-cc-hooks/scripts/preserve-permissions.sh +0 -19
- moai_adk/templates/.claude/skills/moai-cc-hooks/scripts/validate-bash-command.py +0 -24
- moai_adk/templates/.claude/skills/moai-cc-mcp-plugins/SKILL.md +0 -199
- moai_adk/templates/.claude/skills/moai-cc-mcp-plugins/templates/settings-mcp-template.json +0 -39
- moai_adk/templates/.claude/skills/moai-cc-memory/SKILL.md +0 -316
- moai_adk/templates/.claude/skills/moai-cc-memory/templates/session-summary-template.md +0 -18
- moai_adk/templates/.claude/skills/moai-cc-settings/SKILL.md +0 -263
- moai_adk/templates/.claude/skills/moai-cc-settings/templates/settings-complete-template.json +0 -30
- moai_adk/templates/.claude/skills/moai-cc-skills/SKILL.md +0 -291
- moai_adk/templates/.claude/skills/moai-cc-skills/templates/SKILL-template.md +0 -15
- moai_adk/templates/.claude/skills/moai-domain-backend/SKILL.md +0 -290
- moai_adk/templates/.claude/skills/moai-domain-backend/examples.md +0 -1633
- moai_adk/templates/.claude/skills/moai-domain-backend/reference.md +0 -660
- moai_adk/templates/.claude/skills/moai-domain-cli-tool/SKILL.md +0 -123
- moai_adk/templates/.claude/skills/moai-domain-cli-tool/examples.md +0 -29
- moai_adk/templates/.claude/skills/moai-domain-cli-tool/reference.md +0 -30
- moai_adk/templates/.claude/skills/moai-domain-data-science/SKILL.md +0 -123
- moai_adk/templates/.claude/skills/moai-domain-data-science/examples.md +0 -29
- moai_adk/templates/.claude/skills/moai-domain-data-science/reference.md +0 -30
- moai_adk/templates/.claude/skills/moai-domain-database/SKILL.md +0 -123
- moai_adk/templates/.claude/skills/moai-domain-database/examples.md +0 -29
- moai_adk/templates/.claude/skills/moai-domain-database/reference.md +0 -30
- moai_adk/templates/.claude/skills/moai-domain-devops/SKILL.md +0 -124
- moai_adk/templates/.claude/skills/moai-domain-devops/examples.md +0 -29
- moai_adk/templates/.claude/skills/moai-domain-devops/reference.md +0 -31
- moai_adk/templates/.claude/skills/moai-domain-frontend/SKILL.md +0 -124
- moai_adk/templates/.claude/skills/moai-domain-frontend/examples.md +0 -29
- moai_adk/templates/.claude/skills/moai-domain-frontend/reference.md +0 -31
- moai_adk/templates/.claude/skills/moai-domain-ml/SKILL.md +0 -123
- moai_adk/templates/.claude/skills/moai-domain-ml/examples.md +0 -29
- moai_adk/templates/.claude/skills/moai-domain-ml/reference.md +0 -30
- moai_adk/templates/.claude/skills/moai-domain-mobile-app/SKILL.md +0 -123
- moai_adk/templates/.claude/skills/moai-domain-mobile-app/examples.md +0 -29
- moai_adk/templates/.claude/skills/moai-domain-mobile-app/reference.md +0 -30
- moai_adk/templates/.claude/skills/moai-domain-security/SKILL.md +0 -123
- moai_adk/templates/.claude/skills/moai-domain-security/examples.md +0 -29
- moai_adk/templates/.claude/skills/moai-domain-security/reference.md +0 -30
- moai_adk/templates/.claude/skills/moai-domain-web-api/SKILL.md +0 -123
- moai_adk/templates/.claude/skills/moai-domain-web-api/examples.md +0 -29
- moai_adk/templates/.claude/skills/moai-domain-web-api/reference.md +0 -30
- moai_adk/templates/.claude/skills/moai-essentials-debug/SKILL.md +0 -303
- moai_adk/templates/.claude/skills/moai-essentials-debug/examples.md +0 -1064
- moai_adk/templates/.claude/skills/moai-essentials-debug/reference.md +0 -1047
- moai_adk/templates/.claude/skills/moai-essentials-perf/SKILL.md +0 -113
- moai_adk/templates/.claude/skills/moai-essentials-perf/examples.md +0 -29
- moai_adk/templates/.claude/skills/moai-essentials-perf/reference.md +0 -28
- moai_adk/templates/.claude/skills/moai-essentials-refactor/SKILL.md +0 -113
- moai_adk/templates/.claude/skills/moai-essentials-refactor/examples.md +0 -29
- moai_adk/templates/.claude/skills/moai-essentials-refactor/reference.md +0 -28
- moai_adk/templates/.claude/skills/moai-essentials-review/SKILL.md +0 -113
- moai_adk/templates/.claude/skills/moai-essentials-review/examples.md +0 -29
- moai_adk/templates/.claude/skills/moai-essentials-review/reference.md +0 -28
- moai_adk/templates/.claude/skills/moai-foundation-ears/SKILL.md +0 -116
- moai_adk/templates/.claude/skills/moai-foundation-ears/examples.md +0 -29
- moai_adk/templates/.claude/skills/moai-foundation-ears/reference.md +0 -28
- moai_adk/templates/.claude/skills/moai-foundation-git/SKILL.md +0 -122
- moai_adk/templates/.claude/skills/moai-foundation-git/examples.md +0 -29
- moai_adk/templates/.claude/skills/moai-foundation-git/reference.md +0 -29
- moai_adk/templates/.claude/skills/moai-foundation-langs/SKILL.md +0 -113
- moai_adk/templates/.claude/skills/moai-foundation-langs/examples.md +0 -29
- moai_adk/templates/.claude/skills/moai-foundation-langs/reference.md +0 -28
- moai_adk/templates/.claude/skills/moai-foundation-specs/SKILL.md +0 -113
- moai_adk/templates/.claude/skills/moai-foundation-specs/examples.md +0 -29
- moai_adk/templates/.claude/skills/moai-foundation-specs/reference.md +0 -28
- moai_adk/templates/.claude/skills/moai-foundation-tags/SKILL.md +0 -113
- moai_adk/templates/.claude/skills/moai-foundation-tags/examples.md +0 -29
- moai_adk/templates/.claude/skills/moai-foundation-tags/reference.md +0 -28
- moai_adk/templates/.claude/skills/moai-foundation-trust/SKILL.md +0 -307
- moai_adk/templates/.claude/skills/moai-foundation-trust/examples.md +0 -0
- moai_adk/templates/.claude/skills/moai-foundation-trust/reference.md +0 -1099
- moai_adk/templates/.claude/skills/moai-lang-c/SKILL.md +0 -124
- moai_adk/templates/.claude/skills/moai-lang-c/examples.md +0 -29
- moai_adk/templates/.claude/skills/moai-lang-c/reference.md +0 -31
- moai_adk/templates/.claude/skills/moai-lang-cpp/SKILL.md +0 -124
- moai_adk/templates/.claude/skills/moai-lang-cpp/examples.md +0 -29
- moai_adk/templates/.claude/skills/moai-lang-cpp/reference.md +0 -31
- moai_adk/templates/.claude/skills/moai-lang-csharp/SKILL.md +0 -123
- moai_adk/templates/.claude/skills/moai-lang-csharp/examples.md +0 -29
- moai_adk/templates/.claude/skills/moai-lang-csharp/reference.md +0 -30
- moai_adk/templates/.claude/skills/moai-lang-dart/SKILL.md +0 -123
- moai_adk/templates/.claude/skills/moai-lang-dart/examples.md +0 -29
- moai_adk/templates/.claude/skills/moai-lang-dart/reference.md +0 -30
- moai_adk/templates/.claude/skills/moai-lang-go/SKILL.md +0 -124
- moai_adk/templates/.claude/skills/moai-lang-go/examples.md +0 -29
- moai_adk/templates/.claude/skills/moai-lang-go/reference.md +0 -31
- moai_adk/templates/.claude/skills/moai-lang-java/SKILL.md +0 -124
- moai_adk/templates/.claude/skills/moai-lang-java/examples.md +0 -29
- moai_adk/templates/.claude/skills/moai-lang-java/reference.md +0 -31
- moai_adk/templates/.claude/skills/moai-lang-javascript/SKILL.md +0 -125
- moai_adk/templates/.claude/skills/moai-lang-javascript/examples.md +0 -29
- moai_adk/templates/.claude/skills/moai-lang-javascript/reference.md +0 -32
- moai_adk/templates/.claude/skills/moai-lang-kotlin/SKILL.md +0 -124
- moai_adk/templates/.claude/skills/moai-lang-kotlin/examples.md +0 -29
- moai_adk/templates/.claude/skills/moai-lang-kotlin/reference.md +0 -31
- moai_adk/templates/.claude/skills/moai-lang-php/SKILL.md +0 -123
- moai_adk/templates/.claude/skills/moai-lang-php/examples.md +0 -29
- moai_adk/templates/.claude/skills/moai-lang-php/reference.md +0 -30
- moai_adk/templates/.claude/skills/moai-lang-python/SKILL.md +0 -431
- moai_adk/templates/.claude/skills/moai-lang-python/examples.md +0 -624
- moai_adk/templates/.claude/skills/moai-lang-python/reference.md +0 -316
- moai_adk/templates/.claude/skills/moai-lang-r/SKILL.md +0 -123
- moai_adk/templates/.claude/skills/moai-lang-r/examples.md +0 -29
- moai_adk/templates/.claude/skills/moai-lang-r/reference.md +0 -30
- moai_adk/templates/.claude/skills/moai-lang-ruby/SKILL.md +0 -124
- moai_adk/templates/.claude/skills/moai-lang-ruby/examples.md +0 -29
- moai_adk/templates/.claude/skills/moai-lang-ruby/reference.md +0 -31
- moai_adk/templates/.claude/skills/moai-lang-rust/SKILL.md +0 -124
- moai_adk/templates/.claude/skills/moai-lang-rust/examples.md +0 -29
- moai_adk/templates/.claude/skills/moai-lang-rust/reference.md +0 -31
- moai_adk/templates/.claude/skills/moai-lang-scala/SKILL.md +0 -123
- moai_adk/templates/.claude/skills/moai-lang-scala/examples.md +0 -29
- moai_adk/templates/.claude/skills/moai-lang-scala/reference.md +0 -30
- moai_adk/templates/.claude/skills/moai-lang-shell/SKILL.md +0 -123
- moai_adk/templates/.claude/skills/moai-lang-shell/examples.md +0 -29
- moai_adk/templates/.claude/skills/moai-lang-shell/reference.md +0 -30
- moai_adk/templates/.claude/skills/moai-lang-sql/SKILL.md +0 -124
- moai_adk/templates/.claude/skills/moai-lang-sql/examples.md +0 -29
- moai_adk/templates/.claude/skills/moai-lang-sql/reference.md +0 -31
- moai_adk/templates/.claude/skills/moai-lang-swift/SKILL.md +0 -123
- moai_adk/templates/.claude/skills/moai-lang-swift/examples.md +0 -29
- moai_adk/templates/.claude/skills/moai-lang-swift/reference.md +0 -30
- moai_adk/templates/.claude/skills/moai-lang-typescript/SKILL.md +0 -127
- moai_adk/templates/.claude/skills/moai-lang-typescript/examples.md +0 -29
- moai_adk/templates/.claude/skills/moai-lang-typescript/reference.md +0 -34
- moai_adk/templates/.claude/skills/moai-skill-factory/CHECKLIST.md +0 -482
- moai_adk/templates/.claude/skills/moai-skill-factory/EXAMPLES.md +0 -278
- moai_adk/templates/.claude/skills/moai-skill-factory/INTERACTIVE-DISCOVERY.md +0 -524
- moai_adk/templates/.claude/skills/moai-skill-factory/METADATA.md +0 -477
- moai_adk/templates/.claude/skills/moai-skill-factory/PARALLEL-ANALYSIS-REPORT.md +0 -429
- moai_adk/templates/.claude/skills/moai-skill-factory/PYTHON-VERSION-MATRIX.md +0 -391
- moai_adk/templates/.claude/skills/moai-skill-factory/SKILL-FACTORY-WORKFLOW.md +0 -431
- moai_adk/templates/.claude/skills/moai-skill-factory/SKILL-UPDATE-ADVISOR.md +0 -577
- moai_adk/templates/.claude/skills/moai-skill-factory/SKILL.md +0 -271
- moai_adk/templates/.claude/skills/moai-skill-factory/STEP-BY-STEP-GUIDE.md +0 -466
- moai_adk/templates/.claude/skills/moai-skill-factory/STRUCTURE.md +0 -583
- moai_adk/templates/.claude/skills/moai-skill-factory/WEB-RESEARCH.md +0 -526
- moai_adk/templates/.claude/skills/moai-skill-factory/reference.md +0 -465
- moai_adk/templates/.claude/skills/moai-skill-factory/scripts/generate-structure.sh +0 -328
- moai_adk/templates/.claude/skills/moai-skill-factory/scripts/validate-skill.sh +0 -312
- moai_adk/templates/.claude/skills/moai-skill-factory/templates/SKILL_TEMPLATE.md +0 -245
- moai_adk/templates/.claude/skills/moai-skill-factory/templates/examples-template.md +0 -285
- moai_adk/templates/.claude/skills/moai-skill-factory/templates/reference-template.md +0 -278
- moai_adk/templates/.claude/skills/moai-skill-factory/templates/scripts-template.sh +0 -303
- moai_adk/templates/.claude/skills/moai-spec-authoring/README.md +0 -137
- moai_adk/templates/.claude/skills/moai-spec-authoring/SKILL.md +0 -219
- moai_adk/templates/.claude/skills/moai-spec-authoring/examples/validate-spec.sh +0 -161
- moai_adk/templates/.claude/skills/moai-spec-authoring/examples.md +0 -541
- moai_adk/templates/.claude/skills/moai-spec-authoring/reference.md +0 -622
- moai_adk/templates/.github/workflows/tag-report.yml +0 -261
- moai_adk/templates/.moai/config.json +0 -113
- moai_adk/templates/.moai/docs/quick-issue-creation-guide.md +0 -219
- moai_adk/templates/.moai/hooks/install.sh +0 -79
- moai_adk/templates/.moai/hooks/pre-commit.sh +0 -66
- moai_adk/templates/.moai/memory/CLAUDE-AGENTS-GUIDE.md +0 -208
- moai_adk/templates/.moai/memory/CLAUDE-PRACTICES.md +0 -369
- moai_adk/templates/.moai/memory/CLAUDE-RULES.md +0 -539
- moai_adk/templates/.moai/memory/DEVELOPMENT-GUIDE.md +0 -344
- moai_adk/templates/.moai/memory/GITFLOW-PROTECTION-POLICY.md +0 -220
- moai_adk/templates/.moai/memory/ISSUE-LABEL-MAPPING.md +0 -150
- moai_adk/templates/.moai/memory/SKILLS-DESCRIPTION-POLICY.md +0 -218
- moai_adk/templates/.moai/memory/SPEC-METADATA.md +0 -356
- moai_adk/templates/.moai/memory/gitflow-protection-policy.md +0 -220
- moai_adk/templates/.moai/memory/spec-metadata.md +0 -356
- moai_adk/templates/.moai/project/product.md +0 -161
- moai_adk/templates/.moai/project/structure.md +0 -156
- moai_adk/templates/.moai/project/tech.md +0 -227
- moai_adk/templates/src/moai_adk/core/__init__.py +0 -5
- moai_adk/templates/src/moai_adk/core/tags/__init__.py +0 -86
- moai_adk/templates/src/moai_adk/core/tags/ci_validator.py +0 -433
- moai_adk/templates/src/moai_adk/core/tags/cli.py +0 -283
- moai_adk/templates/src/moai_adk/core/tags/validator.py +0 -897
- moai_adk-0.9.1.dist-info/RECORD +0 -320
- {moai_adk-0.9.1.dist-info → moai_adk-0.11.0.dist-info}/WHEEL +0 -0
- {moai_adk-0.9.1.dist-info → moai_adk-0.11.0.dist-info}/entry_points.txt +0 -0
- {moai_adk-0.9.1.dist-info → moai_adk-0.11.0.dist-info}/licenses/LICENSE +0 -0
|
@@ -1,149 +0,0 @@
|
|
|
1
|
-
---
|
|
2
|
-
name: alfred:9-feedback
|
|
3
|
-
description: "Interactive GitHub Issue creation - Step-by-step dialog to create issues without command arguments"
|
|
4
|
-
allowed-tools:
|
|
5
|
-
- Bash(gh:*)
|
|
6
|
-
- Task
|
|
7
|
-
- AskUserQuestion
|
|
8
|
-
---
|
|
9
|
-
|
|
10
|
-
# 🎯 MoAI-ADK Alfred 9-Feedback: Interactive GitHub Issue Creation
|
|
11
|
-
|
|
12
|
-
> **Purpose**: Create GitHub Issues through an interactive multi-step dialog. Simple command → guided questions → automatic issue creation.
|
|
13
|
-
|
|
14
|
-
## 📋 Command Purpose
|
|
15
|
-
|
|
16
|
-
Enable developers to instantly report bugs, request features, suggest improvements, and ask questions through conversational dialogs. No command arguments needed—just run `/alfred:9-feedback` and answer questions.
|
|
17
|
-
|
|
18
|
-
**Command Format**:
|
|
19
|
-
```bash
|
|
20
|
-
/alfred:9-feedback
|
|
21
|
-
```
|
|
22
|
-
|
|
23
|
-
That's it! Alfred guides you through the rest.
|
|
24
|
-
|
|
25
|
-
---
|
|
26
|
-
|
|
27
|
-
## 🚀 Interactive Execution Flow
|
|
28
|
-
|
|
29
|
-
### Step 1: Start Command
|
|
30
|
-
```bash
|
|
31
|
-
/alfred:9-feedback
|
|
32
|
-
```
|
|
33
|
-
|
|
34
|
-
Alfred responds and proceeds to Step 2.
|
|
35
|
-
|
|
36
|
-
---
|
|
37
|
-
|
|
38
|
-
### Step 2: Select Issue Type (AskUserQuestion)
|
|
39
|
-
|
|
40
|
-
**Question**: "What type of issue do you want to create?"
|
|
41
|
-
|
|
42
|
-
**Options**:
|
|
43
|
-
```
|
|
44
|
-
[ ] 🐛 Bug Report - Something isn't working
|
|
45
|
-
[ ] ✨ Feature Request - Suggest new functionality
|
|
46
|
-
[ ] ⚡ Improvement - Enhance existing features
|
|
47
|
-
[ ] ❓ Question/Discussion - Ask the team
|
|
48
|
-
```
|
|
49
|
-
|
|
50
|
-
**User Selection**: Selects one (e.g., 🐛 Bug Report)
|
|
51
|
-
|
|
52
|
-
---
|
|
53
|
-
|
|
54
|
-
### Step 3: Enter Issue Title (AskUserQuestion)
|
|
55
|
-
|
|
56
|
-
**Question**: "What is the issue title? (Be concise)"
|
|
57
|
-
|
|
58
|
-
**Example Input**:
|
|
59
|
-
```
|
|
60
|
-
Login button on homepage not responding to clicks
|
|
61
|
-
```
|
|
62
|
-
|
|
63
|
-
---
|
|
64
|
-
|
|
65
|
-
### Step 4: Enter Description (AskUserQuestion)
|
|
66
|
-
|
|
67
|
-
**Question**: "Provide a detailed description (optional—press Enter to skip)"
|
|
68
|
-
|
|
69
|
-
**Example Input**:
|
|
70
|
-
```
|
|
71
|
-
When I click the login button on the homepage, nothing happens.
|
|
72
|
-
Tested on Chrome 120.0 on macOS 14.2.
|
|
73
|
-
Expected: Login modal should appear
|
|
74
|
-
Actual: No response
|
|
75
|
-
```
|
|
76
|
-
|
|
77
|
-
Or just press Enter to skip.
|
|
78
|
-
|
|
79
|
-
---
|
|
80
|
-
|
|
81
|
-
### Step 5: Select Priority (AskUserQuestion)
|
|
82
|
-
|
|
83
|
-
**Question**: "What's the priority level?"
|
|
84
|
-
|
|
85
|
-
**Options**:
|
|
86
|
-
```
|
|
87
|
-
[ ] 🔴 Critical - System down, data loss, security breach
|
|
88
|
-
[ ] 🟠 High - Major feature broken, significant impact
|
|
89
|
-
[✓] 🟡 Medium - Normal priority (default)
|
|
90
|
-
[ ] 🟢 Low - Minor issues, nice-to-have
|
|
91
|
-
```
|
|
92
|
-
|
|
93
|
-
**User Selection**: Selects priority (e.g., 🟠 High)
|
|
94
|
-
|
|
95
|
-
---
|
|
96
|
-
|
|
97
|
-
### Step 6: Create Issue (Automatic)
|
|
98
|
-
|
|
99
|
-
Alfred automatically:
|
|
100
|
-
1. Formats title with emoji: "🐛 [BUG] Login button not responding..."
|
|
101
|
-
2. Prepares body with user description + metadata
|
|
102
|
-
3. Assigns labels: bug, reported, priority-high
|
|
103
|
-
4. Executes: `gh issue create --title ... --body ... --label ...`
|
|
104
|
-
5. Parses issue number from response
|
|
105
|
-
|
|
106
|
-
**Success Output**:
|
|
107
|
-
```
|
|
108
|
-
✅ GitHub Issue #234 created successfully!
|
|
109
|
-
|
|
110
|
-
📋 Title: 🐛 [BUG] Login button not responding to clicks
|
|
111
|
-
🔴 Priority: High
|
|
112
|
-
🏷️ Labels: bug, reported, priority-high
|
|
113
|
-
🔗 URL: https://github.com/owner/repo/issues/234
|
|
114
|
-
|
|
115
|
-
💡 Next: Reference this issue in your commits or link to a SPEC document
|
|
116
|
-
```
|
|
117
|
-
|
|
118
|
-
---
|
|
119
|
-
|
|
120
|
-
## ⚠️ Important Rules
|
|
121
|
-
|
|
122
|
-
### ✅ What to Do
|
|
123
|
-
|
|
124
|
-
- ✅ Ask all 4 questions in sequence (type → title → description → priority)
|
|
125
|
-
- ✅ Preserve exact user wording in title and description
|
|
126
|
-
- ✅ Use AskUserQuestion for all user inputs
|
|
127
|
-
- ✅ Allow skipping description (optional field)
|
|
128
|
-
- ✅ Show issue URL after creation
|
|
129
|
-
|
|
130
|
-
### ❌ What NOT to Do
|
|
131
|
-
|
|
132
|
-
- ❌ Accept command arguments (`/alfred:9-feedback --bug` is wrong—just use `/alfred:9-feedback`)
|
|
133
|
-
- ❌ Skip questions or change order
|
|
134
|
-
- ❌ Rephrase user's input
|
|
135
|
-
- ❌ Create issues without labels
|
|
136
|
-
|
|
137
|
-
---
|
|
138
|
-
|
|
139
|
-
## 💡 Key Benefits
|
|
140
|
-
|
|
141
|
-
1. **🚀 No Arguments Needed**: Just `/alfred:9-feedback`
|
|
142
|
-
2. **💬 Conversational**: Intuitive step-by-step dialog
|
|
143
|
-
3. **🏷️ Auto-labeled**: Labels applied automatically
|
|
144
|
-
4. **🔗 Team Visible**: Issues immediately visible
|
|
145
|
-
5. **⏱️ Fast**: Create issues in 30 seconds
|
|
146
|
-
|
|
147
|
-
---
|
|
148
|
-
|
|
149
|
-
**Supported since**: MoAI-ADK v0.7.0+
|
|
@@ -1,343 +0,0 @@
|
|
|
1
|
-
# Alfred Hooks System
|
|
2
|
-
|
|
3
|
-
**Event-Driven Context Management for MoAI-ADK**
|
|
4
|
-
|
|
5
|
-
Alfred Hooks integrates with Claude Code's event system to automatically manage project context, create checkpoints before risky operations, and provide just-in-time (JIT) document loading.
|
|
6
|
-
|
|
7
|
-
---
|
|
8
|
-
|
|
9
|
-
## 📐 Architecture
|
|
10
|
-
|
|
11
|
-
### Individual Hook Files (Event + Function Naming)
|
|
12
|
-
|
|
13
|
-
```
|
|
14
|
-
.claude/hooks/alfred/
|
|
15
|
-
├── session_start__show_project_info.py # SessionStart: Display project status
|
|
16
|
-
├── user_prompt__jit_load_docs.py # UserPromptSubmit: JIT document loading
|
|
17
|
-
├── pre_tool__auto_checkpoint.py # PreToolUse: Automatic safety checkpoints
|
|
18
|
-
├── post_tool__log_changes.py # PostToolUse: Change tracking (stub)
|
|
19
|
-
├── session_end__cleanup.py # SessionEnd: Cleanup resources (stub)
|
|
20
|
-
├── notification__handle_events.py # Notification: Event processing (stub)
|
|
21
|
-
├── stop__handle_interrupt.py # Stop: Interrupt handling (stub)
|
|
22
|
-
├── subagent_stop__handle_subagent_end.py # SubagentStop: Sub-agent cleanup (stub)
|
|
23
|
-
└── shared/ # Shared business logic
|
|
24
|
-
├── core/ # Core modules
|
|
25
|
-
│ ├── __init__.py # Type definitions (HookPayload, HookResult)
|
|
26
|
-
│ ├── project.py # Language detection, Git info, SPEC counting
|
|
27
|
-
│ ├── context.py # JIT retrieval, workflow context
|
|
28
|
-
│ ├── checkpoint.py # Event-driven checkpoint creation
|
|
29
|
-
│ └── version_cache.py # Library version management
|
|
30
|
-
└── handlers/ # Event handlers
|
|
31
|
-
├── __init__.py # Handler exports
|
|
32
|
-
├── session.py # SessionStart, SessionEnd handlers
|
|
33
|
-
├── user.py # UserPromptSubmit handler
|
|
34
|
-
├── tool.py # PreToolUse, PostToolUse handlers
|
|
35
|
-
└── notification.py # Notification, Stop handlers
|
|
36
|
-
```
|
|
37
|
-
|
|
38
|
-
### Design Principles
|
|
39
|
-
|
|
40
|
-
- **Clarity First**: File names describe what each hook does (UX priority)
|
|
41
|
-
- **DRY Implementation**: Shared logic in `shared/` modules (maintainability)
|
|
42
|
-
- **Self-Documenting**: Event + Function naming convention (e.g., `session_start__show_project_info.py`)
|
|
43
|
-
- **Independent Execution**: Each hook file is self-contained and executable
|
|
44
|
-
- **Timeout Protection**: All hooks enforce 5-second SIGALRM timeout
|
|
45
|
-
|
|
46
|
-
---
|
|
47
|
-
|
|
48
|
-
## 🎯 Hook Files
|
|
49
|
-
|
|
50
|
-
### `session_start__show_project_info.py`
|
|
51
|
-
|
|
52
|
-
**Event**: SessionStart
|
|
53
|
-
**Purpose**: Display project information when session begins
|
|
54
|
-
|
|
55
|
-
**Output**:
|
|
56
|
-
- Programming language
|
|
57
|
-
- Git branch and status
|
|
58
|
-
- SPEC progress (completed/total %)
|
|
59
|
-
- Recent checkpoints
|
|
60
|
-
|
|
61
|
-
**Example**:
|
|
62
|
-
```bash
|
|
63
|
-
echo '{"cwd": "."}' | uv run session_start__show_project_info.py
|
|
64
|
-
# Output: {"continue": true, "systemMessage": "🚀 MoAI-ADK v0.8.0 | 📦 python..."}
|
|
65
|
-
```
|
|
66
|
-
|
|
67
|
-
---
|
|
68
|
-
|
|
69
|
-
### `user_prompt__jit_load_docs.py`
|
|
70
|
-
|
|
71
|
-
**Event**: UserPromptSubmit
|
|
72
|
-
**Purpose**: Analyze prompt and recommend relevant documents
|
|
73
|
-
|
|
74
|
-
**Features**:
|
|
75
|
-
- Pattern matching for Alfred commands (`/alfred:1-plan` → spec-metadata.md)
|
|
76
|
-
- @TAG mention detection
|
|
77
|
-
- SPEC reference extraction
|
|
78
|
-
- Document path suggestions
|
|
79
|
-
|
|
80
|
-
**Output Schema** (UserPromptSubmit-specific):
|
|
81
|
-
```json
|
|
82
|
-
{
|
|
83
|
-
"continue": true,
|
|
84
|
-
"hookSpecificOutput": {
|
|
85
|
-
"hookEventName": "UserPromptSubmit",
|
|
86
|
-
"additionalContext": "Suggested documents: .moai/memory/spec-metadata.md"
|
|
87
|
-
}
|
|
88
|
-
}
|
|
89
|
-
```
|
|
90
|
-
|
|
91
|
-
---
|
|
92
|
-
|
|
93
|
-
### `pre_tool__auto_checkpoint.py`
|
|
94
|
-
|
|
95
|
-
**Event**: PreToolUse
|
|
96
|
-
**Matcher**: `Edit|Write|MultiEdit`
|
|
97
|
-
**Purpose**: Automatically create Git checkpoints before risky operations
|
|
98
|
-
|
|
99
|
-
**Risky Operations Detected**:
|
|
100
|
-
- **Bash**: `rm -rf`, `git merge`, `git reset --hard`
|
|
101
|
-
- **Edit/Write**: `CLAUDE.md`, `config.json`, critical configuration files
|
|
102
|
-
- **MultiEdit**: Operations affecting ≥10 files
|
|
103
|
-
|
|
104
|
-
**Checkpoint Strategy**:
|
|
105
|
-
1. Detect risky pattern
|
|
106
|
-
2. Create checkpoint branch: `checkpoint/before-{operation}-{timestamp}`
|
|
107
|
-
3. Log to `.moai/checkpoints.log`
|
|
108
|
-
4. Return guidance message to user
|
|
109
|
-
|
|
110
|
-
**Example**:
|
|
111
|
-
```bash
|
|
112
|
-
echo '{"toolName": "Bash", "arguments": {"command": "rm -rf temp/"}}' | uv run pre_tool__auto_checkpoint.py
|
|
113
|
-
# Output: {"continue": true, "systemMessage": "✅ Checkpoint created: checkpoint/before-rm-20251029-174500"}
|
|
114
|
-
```
|
|
115
|
-
|
|
116
|
-
---
|
|
117
|
-
|
|
118
|
-
### Stub Hooks (Future Enhancement)
|
|
119
|
-
|
|
120
|
-
**`post_tool__log_changes.py`**
|
|
121
|
-
- Change tracking and audit logging
|
|
122
|
-
- Metrics collection (files modified, lines changed)
|
|
123
|
-
|
|
124
|
-
**`session_end__cleanup.py`**
|
|
125
|
-
- Clear temporary caches
|
|
126
|
-
- Save session metrics
|
|
127
|
-
|
|
128
|
-
**`notification__handle_events.py`**
|
|
129
|
-
- Filter and categorize notifications
|
|
130
|
-
- Send alerts to external systems
|
|
131
|
-
|
|
132
|
-
**`stop__handle_interrupt.py`**
|
|
133
|
-
- Save partial work before interruption
|
|
134
|
-
- Create recovery checkpoint
|
|
135
|
-
|
|
136
|
-
**`subagent_stop__handle_subagent_end.py`**
|
|
137
|
-
- Collect sub-agent execution metrics
|
|
138
|
-
- Log results and errors
|
|
139
|
-
|
|
140
|
-
---
|
|
141
|
-
|
|
142
|
-
## 🏗️ Shared Modules
|
|
143
|
-
|
|
144
|
-
### `shared/core/` - Business Logic
|
|
145
|
-
|
|
146
|
-
**`project.py`** (284 LOC)
|
|
147
|
-
```python
|
|
148
|
-
detect_language(cwd: str) -> str
|
|
149
|
-
get_git_info(cwd: str) -> dict
|
|
150
|
-
count_specs(cwd: str) -> dict
|
|
151
|
-
```
|
|
152
|
-
|
|
153
|
-
**`context.py`** (110 LOC)
|
|
154
|
-
```python
|
|
155
|
-
get_jit_context(prompt: str, cwd: str) -> list[str]
|
|
156
|
-
```
|
|
157
|
-
|
|
158
|
-
**`checkpoint.py`** (244 LOC)
|
|
159
|
-
```python
|
|
160
|
-
detect_risky_operation(tool: str, args: dict) -> tuple[bool, str]
|
|
161
|
-
create_checkpoint(cwd: str, operation: str) -> str
|
|
162
|
-
```
|
|
163
|
-
|
|
164
|
-
### `shared/handlers/` - Event Processing
|
|
165
|
-
|
|
166
|
-
**`session.py`** - SessionStart, SessionEnd
|
|
167
|
-
**`user.py`** - UserPromptSubmit
|
|
168
|
-
**`tool.py`** - PreToolUse, PostToolUse
|
|
169
|
-
**`notification.py`** - Notification, Stop, SubagentStop
|
|
170
|
-
|
|
171
|
-
---
|
|
172
|
-
|
|
173
|
-
## 🔧 Configuration
|
|
174
|
-
|
|
175
|
-
### settings.json
|
|
176
|
-
|
|
177
|
-
```json
|
|
178
|
-
{
|
|
179
|
-
"hooks": {
|
|
180
|
-
"SessionStart": [{
|
|
181
|
-
"hooks": [{
|
|
182
|
-
"command": "uv run \"$CLAUDE_PROJECT_DIR\"/.claude/hooks/alfred/session_start__show_project_info.py",
|
|
183
|
-
"type": "command"
|
|
184
|
-
}]
|
|
185
|
-
}],
|
|
186
|
-
"UserPromptSubmit": [{
|
|
187
|
-
"hooks": [{
|
|
188
|
-
"command": "uv run \"$CLAUDE_PROJECT_DIR\"/.claude/hooks/alfred/user_prompt__jit_load_docs.py",
|
|
189
|
-
"type": "command"
|
|
190
|
-
}]
|
|
191
|
-
}],
|
|
192
|
-
"PreToolUse": [{
|
|
193
|
-
"hooks": [{
|
|
194
|
-
"command": "uv run \"$CLAUDE_PROJECT_DIR\"/.claude/hooks/alfred/pre_tool__auto_checkpoint.py",
|
|
195
|
-
"type": "command"
|
|
196
|
-
}],
|
|
197
|
-
"matcher": "Edit|Write|MultiEdit"
|
|
198
|
-
}]
|
|
199
|
-
}
|
|
200
|
-
}
|
|
201
|
-
```
|
|
202
|
-
|
|
203
|
-
**Key Changes**:
|
|
204
|
-
- ✅ File names are self-descriptive (no arguments needed)
|
|
205
|
-
- ✅ `$CLAUDE_PROJECT_DIR` for reliable path resolution
|
|
206
|
-
- ✅ Each hook file is independent and testable
|
|
207
|
-
|
|
208
|
-
---
|
|
209
|
-
|
|
210
|
-
## 🧪 Testing
|
|
211
|
-
|
|
212
|
-
### Test Individual Hooks
|
|
213
|
-
|
|
214
|
-
```bash
|
|
215
|
-
# Test SessionStart hook
|
|
216
|
-
echo '{"cwd": "."}' | uv run session_start__show_project_info.py
|
|
217
|
-
|
|
218
|
-
# Test UserPromptSubmit hook
|
|
219
|
-
echo '{"cwd": ".", "userPrompt": "/alfred:1-plan"}' | uv run user_prompt__jit_load_docs.py
|
|
220
|
-
|
|
221
|
-
# Test PreToolUse hook
|
|
222
|
-
echo '{"cwd": ".", "toolName": "Edit", "arguments": {"file_path": "CLAUDE.md"}}' | uv run pre_tool__auto_checkpoint.py
|
|
223
|
-
```
|
|
224
|
-
|
|
225
|
-
### Expected Output
|
|
226
|
-
|
|
227
|
-
All hooks should return valid JSON with:
|
|
228
|
-
- `"continue": true` (required field)
|
|
229
|
-
- `"systemMessage"` or `"hookSpecificOutput"` (depending on hook type)
|
|
230
|
-
|
|
231
|
-
---
|
|
232
|
-
|
|
233
|
-
## 🐛 Troubleshooting
|
|
234
|
-
|
|
235
|
-
For detailed troubleshooting guide, see [TROUBLESHOOTING.md](./TROUBLESHOOTING.md).
|
|
236
|
-
|
|
237
|
-
### Quick Diagnosis
|
|
238
|
-
|
|
239
|
-
```bash
|
|
240
|
-
# List all hook files
|
|
241
|
-
ls -la .claude/hooks/alfred/*.py
|
|
242
|
-
|
|
243
|
-
# Expected output:
|
|
244
|
-
# session_start__show_project_info.py
|
|
245
|
-
# user_prompt__jit_load_docs.py
|
|
246
|
-
# pre_tool__auto_checkpoint.py
|
|
247
|
-
# post_tool__log_changes.py
|
|
248
|
-
# session_end__cleanup.py
|
|
249
|
-
# notification__handle_events.py
|
|
250
|
-
# stop__handle_interrupt.py
|
|
251
|
-
# subagent_stop__handle_subagent_end.py
|
|
252
|
-
```
|
|
253
|
-
|
|
254
|
-
### Common Issues
|
|
255
|
-
|
|
256
|
-
1. **"Hook not found"** → Run `/alfred:0-project update`
|
|
257
|
-
2. **"Import error: No module named 'handlers'"** → Check `shared/handlers/__init__.py` exists
|
|
258
|
-
3. **"Timeout"** → Check Git/file operations, consider increasing timeout in hook file
|
|
259
|
-
4. **"Permission denied"** → Run `chmod +x .claude/hooks/alfred/*.py`
|
|
260
|
-
|
|
261
|
-
---
|
|
262
|
-
|
|
263
|
-
## 🏗️ Architecture Decisions
|
|
264
|
-
|
|
265
|
-
### Why Individual Hook Files? (UX Priority)
|
|
266
|
-
|
|
267
|
-
**Before** (Single Router):
|
|
268
|
-
```
|
|
269
|
-
alfred_hooks.py SessionStart ❌ Unclear what "SessionStart" does
|
|
270
|
-
```
|
|
271
|
-
|
|
272
|
-
**After** (Individual Files):
|
|
273
|
-
```
|
|
274
|
-
session_start__show_project_info.py ✅ Immediately clear purpose
|
|
275
|
-
```
|
|
276
|
-
|
|
277
|
-
**Benefits**:
|
|
278
|
-
1. ✅ **Self-Documenting**: File name describes functionality
|
|
279
|
-
2. ✅ **Easy Debugging**: Error messages show which hook failed
|
|
280
|
-
3. ✅ **Simple Discovery**: `ls` command shows all available hooks
|
|
281
|
-
4. ✅ **Independent Testing**: Each hook can be tested in isolation
|
|
282
|
-
5. ✅ **Selective Disabling**: Comment out specific hook in settings.json
|
|
283
|
-
|
|
284
|
-
**Tradeoffs**:
|
|
285
|
-
- ⚠️ **More Files**: 8 hook files instead of 1 router
|
|
286
|
-
- ⚠️ **Shared Logic**: Still needs `shared/` directory for DRY principle
|
|
287
|
-
|
|
288
|
-
**Decision**: **UX > Technical Elegance** - Users benefit from clarity
|
|
289
|
-
|
|
290
|
-
### Why Keep shared/ Directory? (DRY Principle)
|
|
291
|
-
|
|
292
|
-
**Shared Logic** (70% of codebase):
|
|
293
|
-
- Type definitions (HookResult, HookPayload)
|
|
294
|
-
- Project metadata (language detection, Git info)
|
|
295
|
-
- Checkpoint creation
|
|
296
|
-
- JIT context analysis
|
|
297
|
-
|
|
298
|
-
**Alternative** (Code Duplication):
|
|
299
|
-
```python
|
|
300
|
-
# ❌ BAD: Copy HookResult to each hook file
|
|
301
|
-
# session_start__show_project_info.py
|
|
302
|
-
class HookResult: # 50 LOC duplicated
|
|
303
|
-
...
|
|
304
|
-
|
|
305
|
-
# user_prompt__jit_load_docs.py
|
|
306
|
-
class HookResult: # 50 LOC duplicated again
|
|
307
|
-
...
|
|
308
|
-
```
|
|
309
|
-
|
|
310
|
-
**Current** (Shared Module):
|
|
311
|
-
```python
|
|
312
|
-
# ✅ GOOD: Import from shared module
|
|
313
|
-
from shared.core import HookResult # DRY principle
|
|
314
|
-
```
|
|
315
|
-
|
|
316
|
-
**Decision**: **Hybrid Approach** - Individual files for UX + Shared modules for DRY
|
|
317
|
-
|
|
318
|
-
---
|
|
319
|
-
|
|
320
|
-
## 📈 Version History
|
|
321
|
-
|
|
322
|
-
### v0.9.0 (2025-10-29) - Individual Hook Files (UX Priority)
|
|
323
|
-
- ✅ **BREAKING**: Split `alfred_hooks.py` into 8 individual files
|
|
324
|
-
- ✅ **NAMING**: Event + Function naming convention (`session_start__show_project_info.py`)
|
|
325
|
-
- ✅ **STRUCTURE**: Moved shared logic to `shared/` directory
|
|
326
|
-
- ✅ **UX**: File names are self-descriptive (no arguments needed)
|
|
327
|
-
- ✅ **DEBUGGING**: Error messages now show which hook failed
|
|
328
|
-
|
|
329
|
-
### v0.8.0 (2025-10-29) - Path Resolution & Timeout Fixes
|
|
330
|
-
- ✅ **FIXED**: Use `$CLAUDE_PROJECT_DIR` for reliable path resolution
|
|
331
|
-
- ✅ **ADDED**: Global SIGALRM timeout protection (5 seconds)
|
|
332
|
-
- ✅ **ADDED**: Comprehensive TROUBLESHOOTING.md guide
|
|
333
|
-
|
|
334
|
-
### v0.7.0 (2025-10-17) - Stateless Refactoring
|
|
335
|
-
- ✅ **REMOVED**: Workflow context from hooks (delegated to Commands layer)
|
|
336
|
-
- ✅ **PERFORMANCE**: 180ms → 70ms (61% improvement)
|
|
337
|
-
- ✅ **COMPLIANCE**: 100% stateless (no global variables)
|
|
338
|
-
|
|
339
|
-
---
|
|
340
|
-
|
|
341
|
-
**Last Updated**: 2025-10-29
|
|
342
|
-
**Version**: 0.9.0
|
|
343
|
-
**Author**: @Alfred (MoAI-ADK SuperAgent)
|