strikethroo 3.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (83) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +79 -0
  3. package/dist/cli.d.ts +9 -0
  4. package/dist/cli.d.ts.map +1 -0
  5. package/dist/cli.js +187 -0
  6. package/dist/cli.js.map +1 -0
  7. package/dist/conflict-detector.d.ts +24 -0
  8. package/dist/conflict-detector.d.ts.map +1 -0
  9. package/dist/conflict-detector.js +130 -0
  10. package/dist/conflict-detector.js.map +1 -0
  11. package/dist/index.d.ts +22 -0
  12. package/dist/index.d.ts.map +1 -0
  13. package/dist/index.js +344 -0
  14. package/dist/index.js.map +1 -0
  15. package/dist/metadata.d.ts +40 -0
  16. package/dist/metadata.d.ts.map +1 -0
  17. package/dist/metadata.js +121 -0
  18. package/dist/metadata.js.map +1 -0
  19. package/dist/plan-utils.d.ts +35 -0
  20. package/dist/plan-utils.d.ts.map +1 -0
  21. package/dist/plan-utils.js +123 -0
  22. package/dist/plan-utils.js.map +1 -0
  23. package/dist/plan.d.ts +27 -0
  24. package/dist/plan.d.ts.map +1 -0
  25. package/dist/plan.js +279 -0
  26. package/dist/plan.js.map +1 -0
  27. package/dist/prompts.d.ts +21 -0
  28. package/dist/prompts.d.ts.map +1 -0
  29. package/dist/prompts.js +132 -0
  30. package/dist/prompts.js.map +1 -0
  31. package/dist/status.d.ts +73 -0
  32. package/dist/status.d.ts.map +1 -0
  33. package/dist/status.js +375 -0
  34. package/dist/status.js.map +1 -0
  35. package/dist/types.d.ts +274 -0
  36. package/dist/types.d.ts.map +1 -0
  37. package/dist/types.js +9 -0
  38. package/dist/types.js.map +1 -0
  39. package/dist/utils.d.ts +53 -0
  40. package/dist/utils.d.ts.map +1 -0
  41. package/dist/utils.js +158 -0
  42. package/dist/utils.js.map +1 -0
  43. package/package.json +94 -0
  44. package/templates/harness/agents/plan-creator.md +95 -0
  45. package/templates/harness/skills/st-create-plan/SKILL.md +120 -0
  46. package/templates/harness/skills/st-create-plan/scripts/find-strikethroo-root.cjs +116 -0
  47. package/templates/harness/skills/st-create-plan/scripts/get-next-plan-id.cjs +197 -0
  48. package/templates/harness/skills/st-execute-blueprint/SKILL.md +147 -0
  49. package/templates/harness/skills/st-execute-blueprint/scripts/create-feature-branch.cjs +359 -0
  50. package/templates/harness/skills/st-execute-blueprint/scripts/find-strikethroo-root.cjs +116 -0
  51. package/templates/harness/skills/st-execute-blueprint/scripts/validate-plan-blueprint.cjs +358 -0
  52. package/templates/harness/skills/st-execute-task/SKILL.md +195 -0
  53. package/templates/harness/skills/st-execute-task/scripts/check-task-dependencies.cjs +420 -0
  54. package/templates/harness/skills/st-execute-task/scripts/find-strikethroo-root.cjs +116 -0
  55. package/templates/harness/skills/st-execute-task/scripts/validate-plan-blueprint.cjs +358 -0
  56. package/templates/harness/skills/st-full-workflow/SKILL.md +413 -0
  57. package/templates/harness/skills/st-full-workflow/scripts/create-feature-branch.cjs +359 -0
  58. package/templates/harness/skills/st-full-workflow/scripts/find-strikethroo-root.cjs +116 -0
  59. package/templates/harness/skills/st-full-workflow/scripts/get-next-plan-id.cjs +197 -0
  60. package/templates/harness/skills/st-full-workflow/scripts/get-next-task-id.cjs +295 -0
  61. package/templates/harness/skills/st-full-workflow/scripts/validate-plan-blueprint.cjs +358 -0
  62. package/templates/harness/skills/st-generate-tasks/SKILL.md +244 -0
  63. package/templates/harness/skills/st-generate-tasks/scripts/find-strikethroo-root.cjs +116 -0
  64. package/templates/harness/skills/st-generate-tasks/scripts/get-next-task-id.cjs +295 -0
  65. package/templates/harness/skills/st-generate-tasks/scripts/validate-plan-blueprint.cjs +358 -0
  66. package/templates/harness/skills/st-refine-plan/SKILL.md +205 -0
  67. package/templates/harness/skills/st-refine-plan/scripts/find-strikethroo-root.cjs +116 -0
  68. package/templates/harness/skills/st-refine-plan/scripts/validate-plan-blueprint.cjs +358 -0
  69. package/templates/strikethroo/README.md +7 -0
  70. package/templates/strikethroo/config/STRIKETHROO.md +76 -0
  71. package/templates/strikethroo/config/hooks/POST_ERROR_DETECTION.md +46 -0
  72. package/templates/strikethroo/config/hooks/POST_EXECUTION.md +25 -0
  73. package/templates/strikethroo/config/hooks/POST_PHASE.md +24 -0
  74. package/templates/strikethroo/config/hooks/POST_PLAN.md +5 -0
  75. package/templates/strikethroo/config/hooks/POST_TASK_GENERATION_ALL.md +41 -0
  76. package/templates/strikethroo/config/hooks/PRE_PHASE.md +21 -0
  77. package/templates/strikethroo/config/hooks/PRE_PLAN.md +42 -0
  78. package/templates/strikethroo/config/hooks/PRE_TASK_ASSIGNMENT.md +32 -0
  79. package/templates/strikethroo/config/hooks/PRE_TASK_EXECUTION.md +1 -0
  80. package/templates/strikethroo/config/templates/BLUEPRINT_TEMPLATE.md +24 -0
  81. package/templates/strikethroo/config/templates/EXECUTION_SUMMARY_TEMPLATE.md +13 -0
  82. package/templates/strikethroo/config/templates/PLAN_TEMPLATE.md +109 -0
  83. package/templates/strikethroo/config/templates/TASK_TEMPLATE.md +36 -0
@@ -0,0 +1,32 @@
1
+ # PRE_TASK_ASSIGNMENT Hook
2
+
3
+ ## Agent Selection and Task Assignment
4
+
5
+ - For each task in the current phase:
6
+ - Read task frontmatter to extract the `skills` property (array of technical skills)
7
+ - Analyze task requirements and technical domain from description
8
+ - Match task skills against available sub-agent capabilities
9
+ - Select the most appropriate sub-agent (if any are available). If no sub-agent is appropriate, use the general-purpose one.
10
+ - Consider task-specific requirements from the task document
11
+
12
+ [IMPORTANT] Analyze the set of tasks skills in order to engage any relevant harness skills as necessary (either global
13
+ or project skills).
14
+
15
+
16
+ ## Available Sub-Agents
17
+ Analyze the sub-agents available in your current harness's agents directory. If none are available or the available
18
+ ones do not match the task's requirements, then use a generic agent.
19
+
20
+ ## Matching Criteria
21
+ Select agents based on:
22
+ 1. **Primary skill match**: Task technical requirements from the `skills` array in task frontmatter
23
+ 2. **Domain expertise**: Specific frameworks or libraries mentioned in task descriptions
24
+ 3. **Task complexity**: Senior vs. junior agent capabilities
25
+ 4. **Resource efficiency**: Avoid over-provisioning for simple tasks
26
+
27
+ ## Skills Extraction and Agent Detection
28
+
29
+ 1. Read the `skills` array from the task's YAML frontmatter directly.
30
+ 2. Check for available sub-agents in your harness's agents directory.
31
+ 3. If matching sub-agents are found, select the most appropriate one based on the task's required skills.
32
+ 4. If no sub-agents are available or none match, use a general-purpose agent for task execution.
@@ -0,0 +1 @@
1
+ # PRE_TASK_EXECUTION Hook
@@ -0,0 +1,24 @@
1
+ ## Execution Blueprint
2
+
3
+ **Validation Gates:**
4
+ - Reference: `/config/hooks/POST_PHASE.md`
5
+
6
+ ### Phase 1: [Descriptive Phase Name]
7
+ **Parallel Tasks:**
8
+ - Task 001: [Description]
9
+ - Task 005: [Description]
10
+ - Task 009: [Description]
11
+
12
+ ### Phase 2: [Descriptive Phase Name]
13
+ **Parallel Tasks:**
14
+ - Task 002: [Description] (depends on: 001)
15
+ - Task 003: [Description] (depends on: 001)
16
+ - Task 006: [Description] (depends on: 005)
17
+
18
+ [Continue for all phases...]
19
+
20
+ ### Post-phase Actions
21
+
22
+ ### Execution Summary
23
+ - Total Phases: X
24
+ - Total Tasks: Y
@@ -0,0 +1,13 @@
1
+ ## Execution Summary
2
+
3
+ **Status**: ✅ Completed Successfully
4
+ **Completed Date**: [YYYY-MM-DD]
5
+
6
+ ### Results
7
+ [Brief summary of execution results and key deliverables]
8
+
9
+ ### Noteworthy Events
10
+ [Highlight any unexpected events, challenges overcome, or significant findings during execution. If none occurred, state "No significant issues encountered."]
11
+
12
+ ### Necessary follow-ups
13
+ [Any follow-up actions or optimizations identified]
@@ -0,0 +1,109 @@
1
+ ---
2
+ id: [PLAN-ID]
3
+ summary: "[Brief one-line description of what this plan accomplishes]"
4
+ created: [YYYY-MM-DD]
5
+ ---
6
+
7
+ # Plan: [Descriptive Plan Title]
8
+
9
+ ## Original Work Order
10
+ [The unmodified user input that was used to generate this plan, as a quote]
11
+
12
+ ## Plan Clarifications [only add it if clarifications were necessary]
13
+ [Clarification questions and answers in table format]
14
+
15
+ ## Executive Summary
16
+
17
+ [Provide a 2-3 paragraph overview of the plan. Include:
18
+ - What the plan accomplishes
19
+ - Why this approach was chosen
20
+ - Key benefits and outcomes expected]
21
+
22
+ ## Context
23
+
24
+ ### Current State vs Target State
25
+ [Create a table that compares the current state with the target state in the different aspects of the implementation. Include a column on why the change is necessary.]
26
+
27
+ Example:
28
+
29
+ | Current State | Target State | Why? |
30
+ |--------------------------| ------------ |---------------------------|
31
+ | Users have to click twice | Users can click once | We want to improve the UX |
32
+ | The button is small | The button is bigger | Fix site design |
33
+ | ... | ... | ... |
34
+
35
+ ### Background
36
+ [Any additional context, requirements, constraints, any solutions that we tried that didn't work, or relevant history that informs the implementation approach.]
37
+
38
+ ## Architectural Approach
39
+ [Provide an overview of the implementation strategy, key architectural decisions, and technical approach. Break down into major components or phases using ### subheadings. Add a mermaid diagram summary.]
40
+
41
+ ### [Component/Stage 1 Name]
42
+ **Objective**: [What this component accomplishes and why it's important]
43
+
44
+ [Detailed & concise explanation of implementation approach, key technical decisions, specifications, and rationale for design choices.]
45
+
46
+ ### [Component/Stage 2 Name]
47
+ **Objective**: [What this component accomplishes and why it's important]
48
+
49
+ [Detailed & concise explanation of implementation approach, key technical decisions, specifications, and rationale for design choices.]
50
+
51
+ ### [Additional Components as Needed]
52
+ [Continue with additional technical components or phases following the same pattern]
53
+
54
+ ## Risk Considerations and Mitigation Strategies
55
+
56
+ <details>
57
+ <summary>Technical Risks</summary>
58
+ - **[Specific Technical Risk]**: [Description of the technical challenge or limitation]
59
+ - **Mitigation**: [Specific strategy to address this technical risk]
60
+ </details>
61
+
62
+ <details>
63
+ <summary>Implementation Risks</summary>
64
+ - **[Specific Implementation Risk]**: [Description of implementation-related challenge]
65
+ - **Mitigation**: [Specific strategy to address this implementation risk]
66
+ </details>
67
+
68
+ [Additional Risk Categories as Needed: continue with other risk categories such as Integration Risks, Quality Risks, Resource Risks, etc.]
69
+
70
+ ## Success Criteria
71
+
72
+ ### Primary Success Criteria
73
+ 1. [Measurable outcome 1]
74
+ 2. [Measurable outcome 2]
75
+ 3. [Measurable outcome 3]
76
+
77
+ ## Self Validation
78
+
79
+ [Describe the concrete steps an LLM should execute after all tasks are completed to verify the implementation works correctly. These must be actionable verification procedures that inspect the real system — not just running pre-existing tests.
80
+
81
+ Examples of good validation steps:
82
+ - Use Playwright CLI to open a browser, navigate to the affected pages, and take screenshots to confirm the UI renders correctly
83
+ - Run a CLI command to query the database and verify the expected configuration or content exists
84
+ - Use `curl` or a browser automation tool to exercise the new API endpoints and confirm correct responses
85
+ - Take a screenshot of the form/page/component and visually verify the expected elements are present
86
+ - Run the application and interact with the new feature end-to-end, capturing evidence of success
87
+
88
+ Avoid vague statements like "verify it works" or "ensure quality". Each step must be a specific, executable action.]
89
+
90
+ ## Documentation
91
+
92
+ [Required documentation updates to existing documentation, either human-focused documentation like README.md or AI-facing documentation like AGENTS.md and related configuration files.]
93
+
94
+ ## Resource Requirements
95
+
96
+ ### Development Skills
97
+ [Required technical expertise and specialized knowledge areas needed for successful implementation]
98
+
99
+ ### Technical Infrastructure
100
+ [Tools, libraries, frameworks, and systems needed for development and deployment]
101
+
102
+ ### [Additional Resource Categories as Needed]
103
+ [Other resources such as external dependencies, research access, third-party services, etc.]
104
+
105
+ ## Integration Strategy
106
+ [Optional section - how this work integrates with existing systems]
107
+
108
+ ## Notes
109
+ [Optional section - any additional considerations, constraints, or important context]
@@ -0,0 +1,36 @@
1
+ ---
2
+ id: [TASK-ID]
3
+ group: "user-authentication"
4
+ dependencies: [] # List of task IDs, e.g., [2, 3]
5
+ status: "[STATUS]" # pending | in-progress | completed | needs-clarification
6
+ created: [YYYY-MM-DD]
7
+ skills: # Technical skills required for this task
8
+ - [SKILL-1]
9
+ - [SKILL-2]
10
+ ---
11
+ # [TASK-TITLE]
12
+
13
+ ## Objective
14
+ [Clear statement of what this task accomplishes]
15
+
16
+ ## Skills Required
17
+ [Reference to the skills listed in frontmatter - these should align with the technical work needed]
18
+
19
+ ## Acceptance Criteria
20
+ - [ ] Criterion 1
21
+ - [ ] Criterion 2
22
+ - [ ] Criterion 3
23
+
24
+ Use your internal Todo tool to track these and keep on track.
25
+
26
+ ## Technical Requirements
27
+ [Specific technical details, APIs, libraries, etc. - use this to infer appropriate skills]
28
+
29
+ ## Input Dependencies
30
+ [What artifacts/code from other tasks are needed]
31
+
32
+ ## Output Artifacts
33
+ [What this task produces for other tasks to consume]
34
+
35
+ ## Implementation Notes
36
+ [Any helpful context or suggestions, including skill-specific guidance]