@sniper.ai/core 1.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/README.md +73 -0
- package/framework/checklists/code-review.md +33 -0
- package/framework/checklists/discover-review.md +33 -0
- package/framework/checklists/doc-review.md +39 -0
- package/framework/checklists/plan-review.md +52 -0
- package/framework/checklists/sprint-review.md +41 -0
- package/framework/checklists/story-review.md +30 -0
- package/framework/claude-md.template +37 -0
- package/framework/commands/sniper-compose.md +237 -0
- package/framework/commands/sniper-discover.md +397 -0
- package/framework/commands/sniper-doc.md +441 -0
- package/framework/commands/sniper-init.md +372 -0
- package/framework/commands/sniper-plan.md +608 -0
- package/framework/commands/sniper-review.md +305 -0
- package/framework/commands/sniper-solve.md +375 -0
- package/framework/commands/sniper-sprint.md +601 -0
- package/framework/commands/sniper-status.md +276 -0
- package/framework/config.template.yaml +117 -0
- package/framework/personas/cognitive/devils-advocate.md +30 -0
- package/framework/personas/cognitive/mentor-explainer.md +29 -0
- package/framework/personas/cognitive/performance-focused.md +30 -0
- package/framework/personas/cognitive/security-first.md +29 -0
- package/framework/personas/cognitive/systems-thinker.md +29 -0
- package/framework/personas/cognitive/user-empathetic.md +29 -0
- package/framework/personas/domain/.gitkeep +0 -0
- package/framework/personas/process/analyst.md +29 -0
- package/framework/personas/process/architect.md +30 -0
- package/framework/personas/process/developer.md +32 -0
- package/framework/personas/process/doc-analyst.md +63 -0
- package/framework/personas/process/doc-reviewer.md +62 -0
- package/framework/personas/process/doc-writer.md +42 -0
- package/framework/personas/process/product-manager.md +32 -0
- package/framework/personas/process/qa-engineer.md +31 -0
- package/framework/personas/process/scrum-master.md +31 -0
- package/framework/personas/process/ux-designer.md +31 -0
- package/framework/personas/technical/ai-ml.md +33 -0
- package/framework/personas/technical/api-design.md +32 -0
- package/framework/personas/technical/backend.md +32 -0
- package/framework/personas/technical/database.md +32 -0
- package/framework/personas/technical/frontend.md +33 -0
- package/framework/personas/technical/infrastructure.md +32 -0
- package/framework/personas/technical/security.md +34 -0
- package/framework/settings.template.json +6 -0
- package/framework/spawn-prompts/_template.md +22 -0
- package/framework/teams/discover.yaml +57 -0
- package/framework/teams/doc.yaml +76 -0
- package/framework/teams/plan.yaml +86 -0
- package/framework/teams/solve.yaml +48 -0
- package/framework/teams/sprint.yaml +68 -0
- package/framework/templates/architecture.md +72 -0
- package/framework/templates/brief.md +52 -0
- package/framework/templates/doc-api.md +53 -0
- package/framework/templates/doc-guide.md +35 -0
- package/framework/templates/doc-readme.md +49 -0
- package/framework/templates/epic.md +33 -0
- package/framework/templates/personas.md +118 -0
- package/framework/templates/prd.md +69 -0
- package/framework/templates/risks.md +64 -0
- package/framework/templates/security.md +90 -0
- package/framework/templates/sprint-review.md +32 -0
- package/framework/templates/story.md +37 -0
- package/framework/templates/ux-spec.md +54 -0
- package/framework/workflows/discover-only.md +39 -0
- package/framework/workflows/full-lifecycle.md +56 -0
- package/framework/workflows/quick-feature.md +44 -0
- package/framework/workflows/sprint-cycle.md +47 -0
- package/package.json +30 -0
|
@@ -0,0 +1,69 @@
|
|
|
1
|
+
# Product Requirements Document: {project_name}
|
|
2
|
+
|
|
3
|
+
> **Status:** Draft
|
|
4
|
+
> **Author:** Planning Team — Product Manager
|
|
5
|
+
> **Date:** {date}
|
|
6
|
+
> **Source:** `docs/brief.md`, `docs/personas.md`, `docs/risks.md`
|
|
7
|
+
|
|
8
|
+
## 1. Problem Statement
|
|
9
|
+
<!-- Specific problem, who has it, evidence it's real, current alternatives -->
|
|
10
|
+
|
|
11
|
+
## 2. Solution Overview
|
|
12
|
+
<!-- High-level description of the product solution -->
|
|
13
|
+
|
|
14
|
+
## 3. User Stories
|
|
15
|
+
|
|
16
|
+
### P0 — Critical (Must Ship)
|
|
17
|
+
| ID | As a... | I want to... | So that... | Acceptance Criteria |
|
|
18
|
+
|----|---------|-------------|-----------|-------------------|
|
|
19
|
+
| US-001 | | | | |
|
|
20
|
+
|
|
21
|
+
### P1 — Important (Should Ship)
|
|
22
|
+
| ID | As a... | I want to... | So that... | Acceptance Criteria |
|
|
23
|
+
|----|---------|-------------|-----------|-------------------|
|
|
24
|
+
| US-010 | | | | |
|
|
25
|
+
|
|
26
|
+
### P2 — Nice to Have (Could Ship)
|
|
27
|
+
| ID | As a... | I want to... | So that... | Acceptance Criteria |
|
|
28
|
+
|----|---------|-------------|-----------|-------------------|
|
|
29
|
+
| US-020 | | | | |
|
|
30
|
+
|
|
31
|
+
## 4. Functional Requirements
|
|
32
|
+
<!-- Detailed functional requirements organized by feature area -->
|
|
33
|
+
|
|
34
|
+
### 4.1 {Feature Area 1}
|
|
35
|
+
- FR-001:
|
|
36
|
+
- FR-002:
|
|
37
|
+
|
|
38
|
+
## 5. Non-Functional Requirements
|
|
39
|
+
| Category | Requirement | Target |
|
|
40
|
+
|----------|------------|--------|
|
|
41
|
+
| Performance | | |
|
|
42
|
+
| Security | | |
|
|
43
|
+
| Scalability | | |
|
|
44
|
+
| Availability | | |
|
|
45
|
+
| Accessibility | | |
|
|
46
|
+
|
|
47
|
+
## 6. Success Metrics
|
|
48
|
+
| Metric | Target | Measurement Method |
|
|
49
|
+
|--------|--------|-------------------|
|
|
50
|
+
| | | |
|
|
51
|
+
|
|
52
|
+
## 7. Scope Boundaries
|
|
53
|
+
|
|
54
|
+
### In Scope (v1)
|
|
55
|
+
-
|
|
56
|
+
|
|
57
|
+
### Explicitly Out of Scope
|
|
58
|
+
-
|
|
59
|
+
|
|
60
|
+
## 8. Dependencies & Integrations
|
|
61
|
+
<!-- External services, APIs, third-party tools required -->
|
|
62
|
+
|
|
63
|
+
## 9. Constraints
|
|
64
|
+
<!-- Technical, business, regulatory, timeline constraints -->
|
|
65
|
+
|
|
66
|
+
## 10. Risks & Mitigations
|
|
67
|
+
| Risk | Likelihood | Impact | Mitigation |
|
|
68
|
+
|------|-----------|--------|------------|
|
|
69
|
+
| | | | |
|
|
@@ -0,0 +1,64 @@
|
|
|
1
|
+
# Risk Assessment: {project_name}
|
|
2
|
+
|
|
3
|
+
> **Status:** Draft
|
|
4
|
+
> **Author:** Discovery Team — Risk Researcher
|
|
5
|
+
> **Date:** {date}
|
|
6
|
+
|
|
7
|
+
## Executive Risk Summary
|
|
8
|
+
<!-- 2-3 sentence overview of the project's risk profile -->
|
|
9
|
+
|
|
10
|
+
## Technical Feasibility
|
|
11
|
+
|
|
12
|
+
### Architecture Risks
|
|
13
|
+
| Risk | Likelihood | Impact | Mitigation |
|
|
14
|
+
|------|-----------|--------|------------|
|
|
15
|
+
| | | | |
|
|
16
|
+
|
|
17
|
+
### Integration Risks
|
|
18
|
+
<!-- Third-party dependencies, API stability, vendor lock-in -->
|
|
19
|
+
|
|
20
|
+
### Scalability Risks
|
|
21
|
+
<!-- Performance bottlenecks, data growth, concurrent user limits -->
|
|
22
|
+
|
|
23
|
+
## Compliance & Regulatory
|
|
24
|
+
|
|
25
|
+
### Regulatory Requirements
|
|
26
|
+
<!-- GDPR, HIPAA, SOC 2, PCI-DSS, industry-specific regulations -->
|
|
27
|
+
|
|
28
|
+
### Data Privacy Risks
|
|
29
|
+
<!-- PII handling, data residency, consent management -->
|
|
30
|
+
|
|
31
|
+
## Operational Risks
|
|
32
|
+
|
|
33
|
+
### Deployment & Infrastructure
|
|
34
|
+
<!-- Cloud dependency, disaster recovery, monitoring gaps -->
|
|
35
|
+
|
|
36
|
+
### Team & Resource Risks
|
|
37
|
+
<!-- Skill gaps, key-person dependencies, timeline pressure -->
|
|
38
|
+
|
|
39
|
+
## Security Risks
|
|
40
|
+
|
|
41
|
+
### Attack Surface
|
|
42
|
+
<!-- Authentication, authorization, injection vectors, data exposure -->
|
|
43
|
+
|
|
44
|
+
### Third-Party Risk
|
|
45
|
+
<!-- Supply chain, dependency vulnerabilities, vendor security posture -->
|
|
46
|
+
|
|
47
|
+
## Risk Matrix
|
|
48
|
+
|
|
49
|
+
| # | Risk | Likelihood (1-5) | Impact (1-5) | Score | Priority | Mitigation Strategy |
|
|
50
|
+
|---|------|-------------------|---------------|-------|----------|---------------------|
|
|
51
|
+
| 1 | | | | | | |
|
|
52
|
+
| 2 | | | | | | |
|
|
53
|
+
| 3 | | | | | | |
|
|
54
|
+
|
|
55
|
+
## Assumptions Requiring Validation
|
|
56
|
+
<!-- List assumptions from the brief that carry risk if wrong -->
|
|
57
|
+
1.
|
|
58
|
+
2.
|
|
59
|
+
3.
|
|
60
|
+
|
|
61
|
+
## Open Questions
|
|
62
|
+
<!-- Unresolved items that affect risk assessment -->
|
|
63
|
+
1.
|
|
64
|
+
2.
|
|
@@ -0,0 +1,90 @@
|
|
|
1
|
+
# Security Assessment: {project_name}
|
|
2
|
+
|
|
3
|
+
> **Status:** Draft
|
|
4
|
+
> **Author:** Planning Team — Security Analyst
|
|
5
|
+
> **Date:** {date}
|
|
6
|
+
|
|
7
|
+
## Security Overview
|
|
8
|
+
<!-- 2-3 sentence summary of the project's security posture and key concerns -->
|
|
9
|
+
|
|
10
|
+
## Authentication & Authorization
|
|
11
|
+
|
|
12
|
+
### Authentication Model
|
|
13
|
+
<!-- OAuth 2.0 / JWT / Session-based / API Keys / Multi-factor -->
|
|
14
|
+
|
|
15
|
+
### Authorization Model
|
|
16
|
+
<!-- RBAC / ABAC / ACL — describe roles, permissions, and access levels -->
|
|
17
|
+
|
|
18
|
+
### Session Management
|
|
19
|
+
<!-- Token lifecycle, refresh strategy, revocation, concurrent sessions -->
|
|
20
|
+
|
|
21
|
+
## Data Security
|
|
22
|
+
|
|
23
|
+
### Data Classification
|
|
24
|
+
| Data Type | Classification | Storage | Encryption | Retention |
|
|
25
|
+
|-----------|---------------|---------|------------|-----------|
|
|
26
|
+
| | | | | |
|
|
27
|
+
|
|
28
|
+
### Encryption Requirements
|
|
29
|
+
- **At Rest:** <!-- AES-256, database-level, field-level -->
|
|
30
|
+
- **In Transit:** <!-- TLS 1.3, certificate pinning -->
|
|
31
|
+
- **Key Management:** <!-- KMS, rotation policy -->
|
|
32
|
+
|
|
33
|
+
### PII Handling
|
|
34
|
+
<!-- What PII is collected, how it's stored, who can access it, deletion policy -->
|
|
35
|
+
|
|
36
|
+
## API Security
|
|
37
|
+
|
|
38
|
+
### Input Validation
|
|
39
|
+
<!-- Validation strategy, sanitization, schema enforcement -->
|
|
40
|
+
|
|
41
|
+
### Rate Limiting
|
|
42
|
+
<!-- Per-endpoint limits, burst handling, API key tiers -->
|
|
43
|
+
|
|
44
|
+
### OWASP Top 10 Mitigations
|
|
45
|
+
| Vulnerability | Risk Level | Mitigation |
|
|
46
|
+
|--------------|-----------|------------|
|
|
47
|
+
| Injection | | |
|
|
48
|
+
| Broken Authentication | | |
|
|
49
|
+
| Sensitive Data Exposure | | |
|
|
50
|
+
| XML External Entities | | |
|
|
51
|
+
| Broken Access Control | | |
|
|
52
|
+
| Security Misconfiguration | | |
|
|
53
|
+
| Cross-Site Scripting | | |
|
|
54
|
+
| Insecure Deserialization | | |
|
|
55
|
+
| Known Vulnerabilities | | |
|
|
56
|
+
| Insufficient Logging | | |
|
|
57
|
+
|
|
58
|
+
## Infrastructure Security
|
|
59
|
+
|
|
60
|
+
### Network Architecture
|
|
61
|
+
<!-- VPC, subnets, security groups, WAF, CDN -->
|
|
62
|
+
|
|
63
|
+
### Secrets Management
|
|
64
|
+
<!-- Vault, environment variables, rotation policy -->
|
|
65
|
+
|
|
66
|
+
### Logging & Monitoring
|
|
67
|
+
<!-- Security event logging, alerting, SIEM integration -->
|
|
68
|
+
|
|
69
|
+
## Compliance Requirements
|
|
70
|
+
<!-- Applicable frameworks: SOC 2, GDPR, HIPAA, PCI-DSS, etc. -->
|
|
71
|
+
|
|
72
|
+
## Threat Model
|
|
73
|
+
|
|
74
|
+
### Attack Surface
|
|
75
|
+
<!-- Entry points, trust boundaries, data flows -->
|
|
76
|
+
|
|
77
|
+
### Key Threats
|
|
78
|
+
| Threat | Likelihood | Impact | Mitigation |
|
|
79
|
+
|--------|-----------|--------|------------|
|
|
80
|
+
| | | | |
|
|
81
|
+
|
|
82
|
+
## Recommendations
|
|
83
|
+
<!-- Prioritized security recommendations for implementation -->
|
|
84
|
+
1.
|
|
85
|
+
2.
|
|
86
|
+
3.
|
|
87
|
+
|
|
88
|
+
## Open Questions
|
|
89
|
+
1.
|
|
90
|
+
2.
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
# Sprint {number} Review
|
|
2
|
+
|
|
3
|
+
> **Date:** {date}
|
|
4
|
+
> **Stories Completed:** {count}/{total}
|
|
5
|
+
> **Team:** {teammate list}
|
|
6
|
+
|
|
7
|
+
## Stories Delivered
|
|
8
|
+
| Story | Status | Notes |
|
|
9
|
+
|-------|--------|-------|
|
|
10
|
+
| | Complete / Partial / Blocked | |
|
|
11
|
+
|
|
12
|
+
## Test Results
|
|
13
|
+
- **Tests passed:** {count}
|
|
14
|
+
- **Tests failed:** {count}
|
|
15
|
+
- **Coverage:** {percentage}
|
|
16
|
+
|
|
17
|
+
## Code Quality
|
|
18
|
+
- Linting: Pass / Fail
|
|
19
|
+
- Type checking: Pass / Fail
|
|
20
|
+
- Security scan: Pass / Fail
|
|
21
|
+
|
|
22
|
+
## Technical Debt Introduced
|
|
23
|
+
<!-- Any shortcuts taken, refactoring needed, or known issues -->
|
|
24
|
+
|
|
25
|
+
## Blockers Encountered
|
|
26
|
+
<!-- What blocked progress and how it was resolved -->
|
|
27
|
+
|
|
28
|
+
## Lessons Learned
|
|
29
|
+
<!-- What went well, what didn't, what to change next sprint -->
|
|
30
|
+
|
|
31
|
+
## Next Sprint Candidates
|
|
32
|
+
<!-- Suggested stories for the next sprint -->
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
# Story {epic}.{number}: {title}
|
|
2
|
+
|
|
3
|
+
> **Epic:** {epic title} (`docs/epics/{epic}.md`)
|
|
4
|
+
> **Complexity:** S | M | L | XL
|
|
5
|
+
> **Priority:** P{0|1|2}
|
|
6
|
+
> **File Ownership:** {directories this story touches}
|
|
7
|
+
> **Dependencies:** {story dependencies or "None"}
|
|
8
|
+
|
|
9
|
+
## Description
|
|
10
|
+
<!-- What this story implements, in user-facing terms -->
|
|
11
|
+
|
|
12
|
+
## Embedded Context
|
|
13
|
+
|
|
14
|
+
### From PRD
|
|
15
|
+
<!-- COPY the relevant requirements and user stories from docs/prd.md -->
|
|
16
|
+
|
|
17
|
+
### From Architecture
|
|
18
|
+
<!-- COPY the relevant architecture sections (data models, API contracts, patterns) -->
|
|
19
|
+
|
|
20
|
+
### From UX Spec
|
|
21
|
+
<!-- COPY relevant screen descriptions, user flows, component specs (if frontend story) -->
|
|
22
|
+
|
|
23
|
+
## Acceptance Criteria
|
|
24
|
+
<!-- Testable assertions in Given/When/Then format -->
|
|
25
|
+
1. **Given** ... **When** ... **Then** ...
|
|
26
|
+
2. **Given** ... **When** ... **Then** ...
|
|
27
|
+
|
|
28
|
+
## Test Requirements
|
|
29
|
+
- [ ] Unit tests:
|
|
30
|
+
- [ ] Integration tests:
|
|
31
|
+
- [ ] E2E tests (if applicable):
|
|
32
|
+
|
|
33
|
+
## Implementation Notes
|
|
34
|
+
<!-- Specific patterns, libraries, or approaches to use -->
|
|
35
|
+
|
|
36
|
+
## Out of Scope
|
|
37
|
+
<!-- What this story does NOT include, to prevent scope creep -->
|
|
@@ -0,0 +1,54 @@
|
|
|
1
|
+
# UX Specification: {project_name}
|
|
2
|
+
|
|
3
|
+
> **Status:** Draft
|
|
4
|
+
> **Author:** Planning Team — UX Designer
|
|
5
|
+
> **Date:** {date}
|
|
6
|
+
> **Source:** `docs/prd.md`, `docs/personas.md`
|
|
7
|
+
|
|
8
|
+
## 1. Information Architecture
|
|
9
|
+
<!-- Page hierarchy and navigation structure -->
|
|
10
|
+
|
|
11
|
+
## 2. Screen Inventory
|
|
12
|
+
| Screen | Purpose | User Stories | Key Components |
|
|
13
|
+
|--------|---------|-------------|----------------|
|
|
14
|
+
| | | | |
|
|
15
|
+
|
|
16
|
+
## 3. User Flows
|
|
17
|
+
|
|
18
|
+
### 3.1 {Flow Name}
|
|
19
|
+
<!-- Step-by-step with decision points, error paths -->
|
|
20
|
+
```
|
|
21
|
+
Step 1: User does X
|
|
22
|
+
→ Success: Go to Step 2
|
|
23
|
+
→ Error: Show error message, stay on current screen
|
|
24
|
+
Step 2: ...
|
|
25
|
+
```
|
|
26
|
+
|
|
27
|
+
## 4. Component Hierarchy
|
|
28
|
+
<!-- Reusable UI components and their variants -->
|
|
29
|
+
|
|
30
|
+
### 4.1 {Component Name}
|
|
31
|
+
- **States:** default, hover, active, disabled, loading, error
|
|
32
|
+
- **Props/Variants:**
|
|
33
|
+
- **Accessibility:**
|
|
34
|
+
|
|
35
|
+
## 5. Interaction Patterns
|
|
36
|
+
<!-- Loading states, transitions, empty states, error states -->
|
|
37
|
+
|
|
38
|
+
### Loading States
|
|
39
|
+
### Empty States
|
|
40
|
+
### Error States
|
|
41
|
+
### Confirmation Dialogs
|
|
42
|
+
|
|
43
|
+
## 6. Responsive Strategy
|
|
44
|
+
| Breakpoint | Width | Layout Changes |
|
|
45
|
+
|-----------|-------|---------------|
|
|
46
|
+
| Mobile | < 768px | |
|
|
47
|
+
| Tablet | 768-1024px | |
|
|
48
|
+
| Desktop | > 1024px | |
|
|
49
|
+
|
|
50
|
+
## 7. Accessibility Requirements
|
|
51
|
+
- **WCAG Level:** AA
|
|
52
|
+
- **Keyboard Navigation:**
|
|
53
|
+
- **Screen Reader Support:**
|
|
54
|
+
- **Color Contrast:**
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
# Discovery-Only Workflow
|
|
2
|
+
|
|
3
|
+
Run just the discovery phase for research and analysis.
|
|
4
|
+
|
|
5
|
+
## When to Use
|
|
6
|
+
- Exploring a new project idea before committing
|
|
7
|
+
- Market research or competitive analysis
|
|
8
|
+
- Validating feasibility before full planning
|
|
9
|
+
- User research for an existing product
|
|
10
|
+
|
|
11
|
+
## Execution
|
|
12
|
+
|
|
13
|
+
### Step 1: Initialize (if not already done)
|
|
14
|
+
```
|
|
15
|
+
/sniper-init
|
|
16
|
+
```
|
|
17
|
+
Minimal config — just project name and description needed.
|
|
18
|
+
|
|
19
|
+
### Step 2: Run Discovery
|
|
20
|
+
```
|
|
21
|
+
/sniper-discover
|
|
22
|
+
```
|
|
23
|
+
- Spawns 3-teammate discovery team
|
|
24
|
+
- Produces: project brief, risk assessment, user personas
|
|
25
|
+
- Auto-advances (flexible gate)
|
|
26
|
+
|
|
27
|
+
### Step 3: Review Artifacts
|
|
28
|
+
```
|
|
29
|
+
/sniper-review
|
|
30
|
+
```
|
|
31
|
+
Review the discovery artifacts. Decide whether to:
|
|
32
|
+
- Proceed to full planning (`/sniper-plan`)
|
|
33
|
+
- Iterate on discovery (re-run `/sniper-discover` with feedback)
|
|
34
|
+
- Shelve the project (no further action needed)
|
|
35
|
+
|
|
36
|
+
## Notes
|
|
37
|
+
- Discovery artifacts are useful standalone — no need to continue the lifecycle
|
|
38
|
+
- Domain pack context improves discovery quality significantly
|
|
39
|
+
- The analyst teammate benefits from web search for competitive research
|
|
@@ -0,0 +1,56 @@
|
|
|
1
|
+
# Full Lifecycle Workflow
|
|
2
|
+
|
|
3
|
+
Run the complete SNIPER lifecycle from discovery through implementation.
|
|
4
|
+
|
|
5
|
+
## When to Use
|
|
6
|
+
- New greenfield projects
|
|
7
|
+
- Major product rewrites
|
|
8
|
+
- Projects requiring full planning and governance
|
|
9
|
+
|
|
10
|
+
## Execution Order
|
|
11
|
+
|
|
12
|
+
### Step 1: Initialize
|
|
13
|
+
```
|
|
14
|
+
/sniper-init
|
|
15
|
+
```
|
|
16
|
+
Configure project name, type, stack, and domain pack.
|
|
17
|
+
|
|
18
|
+
### Step 2: Discover (Phase 1)
|
|
19
|
+
```
|
|
20
|
+
/sniper-discover
|
|
21
|
+
```
|
|
22
|
+
- Spawns 3-teammate discovery team (analyst, risk-researcher, user-researcher)
|
|
23
|
+
- Produces: `docs/brief.md`, `docs/risks.md`, `docs/personas.md`
|
|
24
|
+
- Gate: FLEXIBLE (auto-advance, review async)
|
|
25
|
+
|
|
26
|
+
### Step 3: Plan (Phase 2)
|
|
27
|
+
```
|
|
28
|
+
/sniper-plan
|
|
29
|
+
```
|
|
30
|
+
- Spawns 4-teammate planning team (PM, architect, UX, security)
|
|
31
|
+
- Uses Opus model for higher quality output
|
|
32
|
+
- Produces: `docs/prd.md`, `docs/architecture.md`, `docs/ux-spec.md`, `docs/security.md`
|
|
33
|
+
- Gate: STRICT — human MUST approve before proceeding
|
|
34
|
+
|
|
35
|
+
### Step 4: Solve (Phase 3)
|
|
36
|
+
```
|
|
37
|
+
/sniper-solve
|
|
38
|
+
```
|
|
39
|
+
- Single agent (scrum master) — NOT a team
|
|
40
|
+
- Produces: `docs/epics/*.md`, `docs/stories/*.md`
|
|
41
|
+
- Gate: FLEXIBLE (auto-advance, review async)
|
|
42
|
+
|
|
43
|
+
### Step 5: Sprint (Phase 4 — repeating)
|
|
44
|
+
```
|
|
45
|
+
/sniper-sprint
|
|
46
|
+
```
|
|
47
|
+
- Select stories for the sprint
|
|
48
|
+
- Spawns implementation team based on story requirements
|
|
49
|
+
- Produces: source code, tests
|
|
50
|
+
- Gate: STRICT — human reviews code before merge
|
|
51
|
+
- Repeat for each sprint until all stories are complete
|
|
52
|
+
|
|
53
|
+
## Recovery
|
|
54
|
+
- If any phase produces poor output, re-run the phase command
|
|
55
|
+
- Completed files persist on disk — only the conversation resets
|
|
56
|
+
- Sprint failures only affect the current sprint's stories
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
# Quick Feature Workflow
|
|
2
|
+
|
|
3
|
+
Fast-track a single feature without full lifecycle planning.
|
|
4
|
+
|
|
5
|
+
## When to Use
|
|
6
|
+
- Adding a feature to an existing codebase
|
|
7
|
+
- Feature is well-understood and doesn't need discovery or planning
|
|
8
|
+
- Architecture already exists
|
|
9
|
+
- Just need implementation + tests
|
|
10
|
+
|
|
11
|
+
## Prerequisites
|
|
12
|
+
- Existing codebase with established patterns
|
|
13
|
+
- Clear feature requirements (from user, issue, or brief description)
|
|
14
|
+
- Architecture document or existing code to follow patterns from
|
|
15
|
+
|
|
16
|
+
## Execution
|
|
17
|
+
|
|
18
|
+
### Step 1: Write a Story
|
|
19
|
+
Either:
|
|
20
|
+
- Write a story file manually at `docs/stories/quick-{name}.md`
|
|
21
|
+
- Or describe the feature to the lead and have it generate a story using the template
|
|
22
|
+
|
|
23
|
+
The story must include:
|
|
24
|
+
- Feature description and acceptance criteria
|
|
25
|
+
- File ownership (which directories to modify)
|
|
26
|
+
- Test requirements
|
|
27
|
+
- Any relevant context from existing architecture
|
|
28
|
+
|
|
29
|
+
### Step 2: Sprint with Single Story
|
|
30
|
+
```
|
|
31
|
+
/sniper-sprint
|
|
32
|
+
```
|
|
33
|
+
Select only the quick feature story. The command will:
|
|
34
|
+
1. Spawn only the teammates needed for this story
|
|
35
|
+
2. Skip unnecessary roles (e.g., no QA if it's a small change)
|
|
36
|
+
3. Execute the implementation
|
|
37
|
+
|
|
38
|
+
### Step 3: Review
|
|
39
|
+
Gate: STRICT — always review code before merge, even for quick features.
|
|
40
|
+
|
|
41
|
+
## Notes
|
|
42
|
+
- Skips Phases 1-3 entirely
|
|
43
|
+
- Best for S/M complexity features
|
|
44
|
+
- For L/XL features, use the full lifecycle — the planning is worth it
|
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
# Sprint Cycle Workflow
|
|
2
|
+
|
|
3
|
+
Execute a single implementation sprint with an Agent Team.
|
|
4
|
+
|
|
5
|
+
## When to Use
|
|
6
|
+
- Stories already exist in `docs/stories/`
|
|
7
|
+
- Architecture and planning are complete
|
|
8
|
+
- Ready to implement a batch of stories
|
|
9
|
+
|
|
10
|
+
## Prerequisites
|
|
11
|
+
- `docs/architecture.md` exists and is approved
|
|
12
|
+
- Story files exist in `docs/stories/`
|
|
13
|
+
- Config state shows phase is `solve` (completed) or `sprint`
|
|
14
|
+
|
|
15
|
+
## Execution
|
|
16
|
+
|
|
17
|
+
### Step 1: Select Stories
|
|
18
|
+
The `/sniper-sprint` command will:
|
|
19
|
+
1. List all stories from `docs/stories/` that are not yet implemented
|
|
20
|
+
2. Prompt you to select stories for this sprint (or accept a suggested batch)
|
|
21
|
+
3. Determine which teammates are needed based on story file ownership
|
|
22
|
+
|
|
23
|
+
### Step 2: Team Composition
|
|
24
|
+
Based on selected stories, the command:
|
|
25
|
+
1. Reads `.sniper/teams/sprint.yaml` for available teammate definitions
|
|
26
|
+
2. Selects only the teammates needed (e.g., skip infra-dev if no infra stories)
|
|
27
|
+
3. Composes spawn prompts with story context embedded
|
|
28
|
+
4. Assigns file ownership boundaries from `config.yaml`
|
|
29
|
+
|
|
30
|
+
### Step 3: Sprint Execution
|
|
31
|
+
1. Creates team `sniper-sprint-{N}`
|
|
32
|
+
2. Creates tasks with dependencies (QA blocked until implementation done)
|
|
33
|
+
3. Spawns teammates with their composed prompts
|
|
34
|
+
4. Lead enters delegate mode — coordinates, does not code
|
|
35
|
+
5. Facilitates API contract alignment between backend/frontend
|
|
36
|
+
6. Monitors progress, intervenes on blocks
|
|
37
|
+
|
|
38
|
+
### Step 4: Sprint Review
|
|
39
|
+
1. All tasks must be marked complete
|
|
40
|
+
2. Run `/sniper-review` to check the sprint review checklist
|
|
41
|
+
3. Present code diff summary and test results to human
|
|
42
|
+
4. Gate: STRICT — human must approve
|
|
43
|
+
|
|
44
|
+
### Step 5: Post-Sprint
|
|
45
|
+
1. Update config state (increment sprint number, mark stories as complete)
|
|
46
|
+
2. Clean up the agent team
|
|
47
|
+
3. Proceed to next sprint or declare MVP complete
|
package/package.json
ADDED
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "@sniper.ai/core",
|
|
3
|
+
"version": "1.0.0",
|
|
4
|
+
"description": "SNIPER framework core — personas, teams, templates, checklists, and workflows",
|
|
5
|
+
"type": "module",
|
|
6
|
+
"exports": {
|
|
7
|
+
"./package.json": "./package.json",
|
|
8
|
+
"./framework/*": "./framework/*"
|
|
9
|
+
},
|
|
10
|
+
"files": [
|
|
11
|
+
"framework"
|
|
12
|
+
],
|
|
13
|
+
"keywords": [
|
|
14
|
+
"sniper",
|
|
15
|
+
"ai",
|
|
16
|
+
"claude",
|
|
17
|
+
"framework",
|
|
18
|
+
"agent",
|
|
19
|
+
"personas"
|
|
20
|
+
],
|
|
21
|
+
"license": "MIT",
|
|
22
|
+
"repository": {
|
|
23
|
+
"type": "git",
|
|
24
|
+
"url": "https://github.com/sniperai/sniper.git",
|
|
25
|
+
"directory": "packages/core"
|
|
26
|
+
},
|
|
27
|
+
"publishConfig": {
|
|
28
|
+
"access": "public"
|
|
29
|
+
}
|
|
30
|
+
}
|