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.
- package/LICENSE +21 -0
- package/README.md +79 -0
- package/dist/cli.d.ts +9 -0
- package/dist/cli.d.ts.map +1 -0
- package/dist/cli.js +187 -0
- package/dist/cli.js.map +1 -0
- package/dist/conflict-detector.d.ts +24 -0
- package/dist/conflict-detector.d.ts.map +1 -0
- package/dist/conflict-detector.js +130 -0
- package/dist/conflict-detector.js.map +1 -0
- package/dist/index.d.ts +22 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +344 -0
- package/dist/index.js.map +1 -0
- package/dist/metadata.d.ts +40 -0
- package/dist/metadata.d.ts.map +1 -0
- package/dist/metadata.js +121 -0
- package/dist/metadata.js.map +1 -0
- package/dist/plan-utils.d.ts +35 -0
- package/dist/plan-utils.d.ts.map +1 -0
- package/dist/plan-utils.js +123 -0
- package/dist/plan-utils.js.map +1 -0
- package/dist/plan.d.ts +27 -0
- package/dist/plan.d.ts.map +1 -0
- package/dist/plan.js +279 -0
- package/dist/plan.js.map +1 -0
- package/dist/prompts.d.ts +21 -0
- package/dist/prompts.d.ts.map +1 -0
- package/dist/prompts.js +132 -0
- package/dist/prompts.js.map +1 -0
- package/dist/status.d.ts +73 -0
- package/dist/status.d.ts.map +1 -0
- package/dist/status.js +375 -0
- package/dist/status.js.map +1 -0
- package/dist/types.d.ts +274 -0
- package/dist/types.d.ts.map +1 -0
- package/dist/types.js +9 -0
- package/dist/types.js.map +1 -0
- package/dist/utils.d.ts +53 -0
- package/dist/utils.d.ts.map +1 -0
- package/dist/utils.js +158 -0
- package/dist/utils.js.map +1 -0
- package/package.json +94 -0
- package/templates/harness/agents/plan-creator.md +95 -0
- package/templates/harness/skills/st-create-plan/SKILL.md +120 -0
- package/templates/harness/skills/st-create-plan/scripts/find-strikethroo-root.cjs +116 -0
- package/templates/harness/skills/st-create-plan/scripts/get-next-plan-id.cjs +197 -0
- package/templates/harness/skills/st-execute-blueprint/SKILL.md +147 -0
- package/templates/harness/skills/st-execute-blueprint/scripts/create-feature-branch.cjs +359 -0
- package/templates/harness/skills/st-execute-blueprint/scripts/find-strikethroo-root.cjs +116 -0
- package/templates/harness/skills/st-execute-blueprint/scripts/validate-plan-blueprint.cjs +358 -0
- package/templates/harness/skills/st-execute-task/SKILL.md +195 -0
- package/templates/harness/skills/st-execute-task/scripts/check-task-dependencies.cjs +420 -0
- package/templates/harness/skills/st-execute-task/scripts/find-strikethroo-root.cjs +116 -0
- package/templates/harness/skills/st-execute-task/scripts/validate-plan-blueprint.cjs +358 -0
- package/templates/harness/skills/st-full-workflow/SKILL.md +413 -0
- package/templates/harness/skills/st-full-workflow/scripts/create-feature-branch.cjs +359 -0
- package/templates/harness/skills/st-full-workflow/scripts/find-strikethroo-root.cjs +116 -0
- package/templates/harness/skills/st-full-workflow/scripts/get-next-plan-id.cjs +197 -0
- package/templates/harness/skills/st-full-workflow/scripts/get-next-task-id.cjs +295 -0
- package/templates/harness/skills/st-full-workflow/scripts/validate-plan-blueprint.cjs +358 -0
- package/templates/harness/skills/st-generate-tasks/SKILL.md +244 -0
- package/templates/harness/skills/st-generate-tasks/scripts/find-strikethroo-root.cjs +116 -0
- package/templates/harness/skills/st-generate-tasks/scripts/get-next-task-id.cjs +295 -0
- package/templates/harness/skills/st-generate-tasks/scripts/validate-plan-blueprint.cjs +358 -0
- package/templates/harness/skills/st-refine-plan/SKILL.md +205 -0
- package/templates/harness/skills/st-refine-plan/scripts/find-strikethroo-root.cjs +116 -0
- package/templates/harness/skills/st-refine-plan/scripts/validate-plan-blueprint.cjs +358 -0
- package/templates/strikethroo/README.md +7 -0
- package/templates/strikethroo/config/STRIKETHROO.md +76 -0
- package/templates/strikethroo/config/hooks/POST_ERROR_DETECTION.md +46 -0
- package/templates/strikethroo/config/hooks/POST_EXECUTION.md +25 -0
- package/templates/strikethroo/config/hooks/POST_PHASE.md +24 -0
- package/templates/strikethroo/config/hooks/POST_PLAN.md +5 -0
- package/templates/strikethroo/config/hooks/POST_TASK_GENERATION_ALL.md +41 -0
- package/templates/strikethroo/config/hooks/PRE_PHASE.md +21 -0
- package/templates/strikethroo/config/hooks/PRE_PLAN.md +42 -0
- package/templates/strikethroo/config/hooks/PRE_TASK_ASSIGNMENT.md +32 -0
- package/templates/strikethroo/config/hooks/PRE_TASK_EXECUTION.md +1 -0
- package/templates/strikethroo/config/templates/BLUEPRINT_TEMPLATE.md +24 -0
- package/templates/strikethroo/config/templates/EXECUTION_SUMMARY_TEMPLATE.md +13 -0
- package/templates/strikethroo/config/templates/PLAN_TEMPLATE.md +109 -0
- 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]
|