@flydocs/cli 0.5.0-beta.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 (134) hide show
  1. package/README.md +96 -0
  2. package/dist/cli.js +2666 -0
  3. package/package.json +32 -0
  4. package/template/.claude/CLAUDE.md +90 -0
  5. package/template/.claude/agents/README.md +19 -0
  6. package/template/.claude/agents/implementation-agent.md +29 -0
  7. package/template/.claude/agents/pm-agent.md +29 -0
  8. package/template/.claude/agents/research-agent.md +25 -0
  9. package/template/.claude/agents/review-agent.md +29 -0
  10. package/template/.claude/commands/activate.md +10 -0
  11. package/template/.claude/commands/attach.md +9 -0
  12. package/template/.claude/commands/block.md +10 -0
  13. package/template/.claude/commands/capture.md +10 -0
  14. package/template/.claude/commands/close.md +10 -0
  15. package/template/.claude/commands/flydocs-setup.md +598 -0
  16. package/template/.claude/commands/flydocs-update.md +27 -0
  17. package/template/.claude/commands/implement.md +10 -0
  18. package/template/.claude/commands/new-project.md +11 -0
  19. package/template/.claude/commands/project-update.md +10 -0
  20. package/template/.claude/commands/refine.md +10 -0
  21. package/template/.claude/commands/review.md +10 -0
  22. package/template/.claude/commands/start-session.md +10 -0
  23. package/template/.claude/commands/status.md +10 -0
  24. package/template/.claude/commands/validate.md +10 -0
  25. package/template/.claude/commands/wrap-session.md +10 -0
  26. package/template/.claude/settings.json +49 -0
  27. package/template/.claude/skills/README.md +293 -0
  28. package/template/.claude/skills/flydocs-cloud/SKILL.md +96 -0
  29. package/template/.claude/skills/flydocs-cloud/cursor-rule.mdc +50 -0
  30. package/template/.claude/skills/flydocs-cloud/scripts/assign.py +38 -0
  31. package/template/.claude/skills/flydocs-cloud/scripts/assign_cycle.py +44 -0
  32. package/template/.claude/skills/flydocs-cloud/scripts/assign_milestone.py +44 -0
  33. package/template/.claude/skills/flydocs-cloud/scripts/comment.py +39 -0
  34. package/template/.claude/skills/flydocs-cloud/scripts/create_issue.py +100 -0
  35. package/template/.claude/skills/flydocs-cloud/scripts/create_milestone.py +46 -0
  36. package/template/.claude/skills/flydocs-cloud/scripts/create_project.py +40 -0
  37. package/template/.claude/skills/flydocs-cloud/scripts/estimate.py +38 -0
  38. package/template/.claude/skills/flydocs-cloud/scripts/flydocs_api.py +277 -0
  39. package/template/.claude/skills/flydocs-cloud/scripts/get_issue.py +77 -0
  40. package/template/.claude/skills/flydocs-cloud/scripts/link.py +47 -0
  41. package/template/.claude/skills/flydocs-cloud/scripts/list_cycles.py +35 -0
  42. package/template/.claude/skills/flydocs-cloud/scripts/list_issues.py +105 -0
  43. package/template/.claude/skills/flydocs-cloud/scripts/list_milestones.py +40 -0
  44. package/template/.claude/skills/flydocs-cloud/scripts/list_projects.py +45 -0
  45. package/template/.claude/skills/flydocs-cloud/scripts/priority.py +38 -0
  46. package/template/.claude/skills/flydocs-cloud/scripts/project_update.py +59 -0
  47. package/template/.claude/skills/flydocs-cloud/scripts/transition.py +67 -0
  48. package/template/.claude/skills/flydocs-cloud/scripts/update_description.py +47 -0
  49. package/template/.claude/skills/flydocs-cloud/scripts/update_issue.py +111 -0
  50. package/template/.claude/skills/flydocs-context-graph/SKILL.md +87 -0
  51. package/template/.claude/skills/flydocs-context-graph/schema.md +78 -0
  52. package/template/.claude/skills/flydocs-context-graph/scripts/graph_build.py +299 -0
  53. package/template/.claude/skills/flydocs-context-graph/scripts/graph_context.py +338 -0
  54. package/template/.claude/skills/flydocs-context-graph/scripts/graph_query.py +191 -0
  55. package/template/.claude/skills/flydocs-context-graph/scripts/graph_session.py +161 -0
  56. package/template/.claude/skills/flydocs-context-graph/scripts/graph_update.py +194 -0
  57. package/template/.claude/skills/flydocs-context-graph/scripts/graph_utils.py +118 -0
  58. package/template/.claude/skills/flydocs-estimates/SKILL.md +384 -0
  59. package/template/.claude/skills/flydocs-estimates/references/provider-costs.md +152 -0
  60. package/template/.claude/skills/flydocs-figma/SKILL.md +377 -0
  61. package/template/.claude/skills/flydocs-figma/references/PROMPTING.md +108 -0
  62. package/template/.claude/skills/flydocs-figma/references/TROUBLESHOOTING.md +112 -0
  63. package/template/.claude/skills/flydocs-local/SKILL.md +103 -0
  64. package/template/.claude/skills/flydocs-local/cursor-rule.mdc +43 -0
  65. package/template/.claude/skills/flydocs-local/scripts/assign.py +20 -0
  66. package/template/.claude/skills/flydocs-local/scripts/comment.py +27 -0
  67. package/template/.claude/skills/flydocs-local/scripts/create_issue.py +44 -0
  68. package/template/.claude/skills/flydocs-local/scripts/estimate.py +37 -0
  69. package/template/.claude/skills/flydocs-local/scripts/flydocs_api.py +272 -0
  70. package/template/.claude/skills/flydocs-local/scripts/get_issue.py +20 -0
  71. package/template/.claude/skills/flydocs-local/scripts/link.py +41 -0
  72. package/template/.claude/skills/flydocs-local/scripts/list_issues.py +34 -0
  73. package/template/.claude/skills/flydocs-local/scripts/priority.py +37 -0
  74. package/template/.claude/skills/flydocs-local/scripts/project_update.py +67 -0
  75. package/template/.claude/skills/flydocs-local/scripts/status_summary.py +16 -0
  76. package/template/.claude/skills/flydocs-local/scripts/transition.py +24 -0
  77. package/template/.claude/skills/flydocs-local/scripts/update_description.py +35 -0
  78. package/template/.claude/skills/flydocs-local/scripts/update_issue.py +84 -0
  79. package/template/.claude/skills/flydocs-workflow/SKILL.md +85 -0
  80. package/template/.claude/skills/flydocs-workflow/cursor-rule.mdc +53 -0
  81. package/template/.claude/skills/flydocs-workflow/reference/comment-templates.md +131 -0
  82. package/template/.claude/skills/flydocs-workflow/reference/golden-rules.md +76 -0
  83. package/template/.claude/skills/flydocs-workflow/reference/priority-estimates.md +28 -0
  84. package/template/.claude/skills/flydocs-workflow/reference/status-workflow.md +50 -0
  85. package/template/.claude/skills/flydocs-workflow/session.md +128 -0
  86. package/template/.claude/skills/flydocs-workflow/stages/activate.md +46 -0
  87. package/template/.claude/skills/flydocs-workflow/stages/capture.md +50 -0
  88. package/template/.claude/skills/flydocs-workflow/stages/close.md +32 -0
  89. package/template/.claude/skills/flydocs-workflow/stages/implement.md +124 -0
  90. package/template/.claude/skills/flydocs-workflow/stages/refine.md +51 -0
  91. package/template/.claude/skills/flydocs-workflow/stages/review.md +86 -0
  92. package/template/.claude/skills/flydocs-workflow/stages/validate.md +90 -0
  93. package/template/.claude/skills/flydocs-workflow/templates/bug.md +95 -0
  94. package/template/.claude/skills/flydocs-workflow/templates/chore.md +75 -0
  95. package/template/.claude/skills/flydocs-workflow/templates/feature.md +93 -0
  96. package/template/.claude/skills/flydocs-workflow/templates/idea.md +84 -0
  97. package/template/.cursor/agents/implementation-agent.md +28 -0
  98. package/template/.cursor/agents/pm-agent.md +27 -0
  99. package/template/.cursor/agents/research-agent.md +23 -0
  100. package/template/.cursor/agents/review-agent.md +27 -0
  101. package/template/.cursor/hooks.json +29 -0
  102. package/template/.cursor/mcp.json +16 -0
  103. package/template/.env.example +44 -0
  104. package/template/.flydocs/config.json +104 -0
  105. package/template/.flydocs/hooks/auto-approve.py +71 -0
  106. package/template/.flydocs/hooks/post-edit.py +72 -0
  107. package/template/.flydocs/hooks/prefer-scripts.py +89 -0
  108. package/template/.flydocs/hooks/prompt-submit.py +277 -0
  109. package/template/.flydocs/scripts/generate_manifest.py +287 -0
  110. package/template/.flydocs/scripts/skill_manager.py +541 -0
  111. package/template/.flydocs/templates/README.md +46 -0
  112. package/template/.flydocs/templates/bug.md +166 -0
  113. package/template/.flydocs/templates/chore.md +110 -0
  114. package/template/.flydocs/templates/design-system/README.md +27 -0
  115. package/template/.flydocs/templates/design-system/component-patterns.md +92 -0
  116. package/template/.flydocs/templates/design-system/token-mapping.md +168 -0
  117. package/template/.flydocs/templates/feature.md +173 -0
  118. package/template/.flydocs/templates/idea.md +122 -0
  119. package/template/.flydocs/templates/instructions.md +228 -0
  120. package/template/.flydocs/templates/quick-capture.md +35 -0
  121. package/template/.flydocs/templates/scripts/check-design-system.template.mjs +179 -0
  122. package/template/.flydocs/version +1 -0
  123. package/template/AGENTS.md +95 -0
  124. package/template/CHANGELOG.md +271 -0
  125. package/template/flydocs/README.md +186 -0
  126. package/template/flydocs/context/project.md +51 -0
  127. package/template/flydocs/design-system/README.md +126 -0
  128. package/template/flydocs/design-system/component-patterns.md +173 -0
  129. package/template/flydocs/design-system/token-mapping.md +114 -0
  130. package/template/flydocs/knowledge/INDEX.md +100 -0
  131. package/template/flydocs/knowledge/README.md +62 -0
  132. package/template/flydocs/knowledge/product/personas.md +79 -0
  133. package/template/flydocs/knowledge/product/user-flows.md +88 -0
  134. package/template/manifest.json +221 -0
@@ -0,0 +1,173 @@
1
+ <!-- AGENT INSTRUCTIONS
2
+ When creating or refining a feature issue:
3
+
4
+ 1. CONTEXT SECTION:
5
+ - Explain the problem being solved, not just the solution
6
+ - Include business value or user impact
7
+ - Reference project goals from {content-folder}/context/overview.md if relevant
8
+
9
+ 2. USER STORY:
10
+ - Must follow "As a... I want... So that..." format
11
+ - Be specific about the user role (not just "user")
12
+ - Benefit should be concrete and measurable
13
+ - Include an example scenario for clarity
14
+
15
+ 3. ACCEPTANCE CRITERIA:
16
+ - Each criterion must be testable and specific
17
+ - Use checkboxes for tracking completion
18
+ - Include error handling scenarios
19
+ - "Must Have" = required for completion
20
+ - "Should Have" = nice to have, not blocking
21
+ - "Won't Have" = explicitly out of scope
22
+
23
+ 4. TECHNICAL NOTES:
24
+ - Reference patterns from {content-folder}/context/stack.md
25
+ - List specific components/files to create or modify
26
+ - Include data model changes if applicable
27
+ - Note any API changes needed
28
+
29
+ 5. DEPENDENCIES:
30
+ - List issues that must be completed first
31
+ - Note what future work this enables
32
+
33
+ Remove these instructions when creating the final issue.
34
+ -->
35
+
36
+ ## Context
37
+
38
+ [Problem description - what user pain or business need does this address?]
39
+
40
+ **Current Issues:**
41
+ - [Issue or limitation 1]
42
+ - [Issue or limitation 2]
43
+
44
+ ---
45
+
46
+ ## User Story
47
+
48
+ **As a** [specific user role]
49
+ **I want to** [specific goal or action]
50
+ **So that** [concrete benefit or outcome]
51
+
52
+ **Example Scenario:**
53
+ [Real-world scenario where this feature would be used]
54
+
55
+ ---
56
+
57
+ ## Acceptance Criteria
58
+
59
+ ### Must Have
60
+ - [ ] [Specific, measurable criterion 1]
61
+ - [ ] [User can perform X action and see Y result]
62
+ - [ ] [System behaves correctly when Z happens]
63
+ - [ ] [Error handling: System shows helpful message when...]
64
+
65
+ ### Should Have
66
+ - [ ] [Nice-to-have enhancement]
67
+
68
+ ### Won't Have (Out of Scope)
69
+ - [Explicitly excluded functionality]
70
+
71
+ ### Tests
72
+ - [ ] Tests written for core functionality
73
+ - [ ] Edge cases and error scenarios covered
74
+ - [ ] All tests passing
75
+
76
+ ### Documentation
77
+ - [ ] Code documented (comments on complex logic)
78
+ - [ ] Knowledge base updated (if significant decisions/patterns)
79
+ - [ ] Context files updated (if architecture changes)
80
+ - [ ] N/A - No significant documentation needed
81
+
82
+ ---
83
+
84
+ ## Technical Notes
85
+
86
+ ### Implementation Approach
87
+ [High-level description of how this will be built]
88
+
89
+ **Key Technical Decisions:**
90
+ 1. [Decision 1 and rationale]
91
+ 2. [Decision 2 and rationale]
92
+
93
+ ### Components Needed
94
+ **New:**
95
+ - `ComponentName` - [What it does]
96
+
97
+ **Modify:**
98
+ - `ExistingComponent` - [What changes needed]
99
+
100
+ ### Data Model
101
+ ```typescript
102
+ // Schema changes if any
103
+ // OR: No data model changes required
104
+ ```
105
+
106
+ ### API Endpoints
107
+ - `POST /api/endpoint` - [Description]
108
+ - OR: No new endpoints required
109
+
110
+ ---
111
+
112
+ ## Dependencies
113
+
114
+ **Required Before Starting:**
115
+ - [Feature or system that must exist first]
116
+ - OR: No dependencies - can start immediately
117
+
118
+ **Enables Future Work:**
119
+ - [Feature that depends on this being complete]
120
+
121
+ ---
122
+
123
+ ## Design Reference
124
+ <!-- Add Figma links as attachments -->
125
+
126
+ ---
127
+
128
+ ## AI Effort Estimate
129
+ <!--
130
+ AGENT: Fill this section during /refine using the flydocs-estimates skill.
131
+ See .claude/skills/flydocs-estimates/SKILL.md for calculation details.
132
+ Update Actuals section during /close for calibration.
133
+ -->
134
+
135
+ ### Sizing Factors
136
+
137
+ | Factor | Value | Multiplier |
138
+ |--------|-------|------------|
139
+ | **Task Type** | feature | base: 40k |
140
+ | **Scope** | [S/M/L/XL] | ×[0.5/1.0/2.0/4.0] |
141
+ | **Novelty** | [existing/partial/greenfield] | ×[0.7/1.2/2.0] |
142
+ | **Clarity** | [defined/discovery/exploratory] | ×[0.8/1.5/2.5] |
143
+ | **Codebase** | [simple/moderate/complex] | ×[0.8/1.0/1.5] |
144
+
145
+ ### Estimate
146
+
147
+ **Provider**: [Claude Sonnet 4]
148
+ **Calculated Tokens**: ~[X]k
149
+ **Confidence**: ±[40-60]%
150
+ **Token Range**: [low]k - [high]k
151
+ **Cost Range**: $[low] - $[high]
152
+
153
+ ### Approach Comparison
154
+
155
+ | Approach | Est. Cost | Est. Time | Recommendation |
156
+ |----------|-----------|-----------|----------------|
157
+ | **Full AI** | $[X] | [X] hrs | [When to use] |
158
+ | **AI-Assisted** | $[X] + [X]hrs | [X] hrs | [When to use] |
159
+ | **Human-Led** | $[X] (review) | [X] hrs | [When to use] |
160
+
161
+ ### Actuals (fill on /close)
162
+ **Actual Tokens**: [fill after completion]
163
+ **Variance**: [+/-X]% [under/over estimate]
164
+ **Notes**: [what drove variance - blockers, scope changes, retries]
165
+
166
+ ---
167
+
168
+ _Created: YYYY-MM-DD_
169
+
170
+
171
+
172
+
173
+
@@ -0,0 +1,122 @@
1
+ <!-- AGENT INSTRUCTIONS
2
+ When creating or refining an idea issue:
3
+
4
+ 1. SKETCH SECTION:
5
+ - Keep it light - this is brainstorming
6
+ - What/Why/How should each be one sentence
7
+ - Details can be rough notes
8
+
9
+ 2. POTENTIAL VALUE:
10
+ - Think about user benefit first
11
+ - Business value second
12
+ - Be honest about impact uncertainty
13
+
14
+ 3. QUESTIONS TO ANSWER:
15
+ - Capture what you don't know
16
+ - These become research tasks before refinement
17
+ - Include feasibility, effort, and value questions
18
+
19
+ 4. COMPLEXITY:
20
+ - If XL or larger, note how to break it down
21
+ - Ideas often seem smaller until investigated
22
+
23
+ 5. STATUS TRACKING:
24
+ - Ideas follow: Captured → Researched → Validated → Refined or Declined
25
+ - "Refined" means it became a full feature issue
26
+ - "Declined" with reason is valuable documentation
27
+
28
+ 6. CONVERSION:
29
+ - When idea is validated, create feature issue
30
+ - Link the feature issue in "Refined" status
31
+
32
+ Remove these instructions when creating the final issue.
33
+ -->
34
+
35
+ ## Sketch
36
+
37
+ **Quick Description:**
38
+ - **What:** [One sentence - what is this?]
39
+ - **Why:** [One sentence - why might this be valuable?]
40
+ - **How:** [One sentence - rough idea of how it might work]
41
+
42
+ **Details:**
43
+ [Additional thoughts, context, inspiration, related ideas]
44
+
45
+ ---
46
+
47
+ ## Potential Value
48
+
49
+ **For Users:**
50
+ - [Benefit 1]
51
+ - [Benefit 2]
52
+
53
+ **For Business/Product:**
54
+ - [Value 1]
55
+ - [Value 2]
56
+
57
+ **Estimated Impact:** 🔥 High | 📊 Medium | 💡 Low | ❓ Unknown
58
+
59
+ ---
60
+
61
+ ## Questions to Answer
62
+
63
+ **Unknowns:**
64
+ - [ ] What needs research or investigation?
65
+ - [ ] What's the technical feasibility?
66
+ - [ ] What's the rough effort estimate?
67
+ - [ ] Does this already exist elsewhere?
68
+
69
+ **Dependencies:**
70
+ - [ ] Does this depend on other work?
71
+ - [ ] Are there technical constraints?
72
+
73
+ **Risks:**
74
+ - [ ] What could go wrong?
75
+
76
+ ---
77
+
78
+ ## Rough Complexity
79
+
80
+ **Complexity:** XS | S | M | L | XL | ❓ Unknown
81
+
82
+ **If XL or larger:**
83
+ [How could this be broken into smaller features?]
84
+
85
+ ---
86
+
87
+ ## Next Steps
88
+
89
+ **To Validate This Idea:**
90
+ 1. [Research step 1]
91
+ 2. [User validation needed]
92
+ 3. [Technical spike or prototype]
93
+
94
+ **To Turn Into a Feature:**
95
+ 1. [ ] Answer the questions above
96
+ 2. [ ] Define clear user story and acceptance criteria
97
+ 3. [ ] Get stakeholder buy-in
98
+ 4. [ ] Create feature issue with full template
99
+
100
+ ---
101
+
102
+ ## Status Tracking
103
+
104
+ - [ ] **Captured** - Idea written down ✅
105
+ - [ ] **Researched** - Questions answered, feasibility checked
106
+ - [ ] **Validated** - Worth pursuing
107
+ - [ ] **Refined** - Converted to full feature issue
108
+ - [ ] **Declined** - Decided not to pursue
109
+
110
+ **If Declined:**
111
+ - **Reason:** [Why we decided not to do this]
112
+
113
+ **If Refined:**
114
+ - **New Issue:** [Link to feature issue created from this idea]
115
+
116
+ ---
117
+
118
+ _Captured: YYYY-MM-DD_
119
+
120
+
121
+
122
+
@@ -0,0 +1,228 @@
1
+ # Project Instructions
2
+
3
+ > Auto-generated from detected stack. Update as your project evolves.
4
+ > This file takes precedence over skill defaults for project-specific patterns.
5
+
6
+ ---
7
+
8
+ ## Tech Stack
9
+
10
+ <!-- Auto-filled from detection. Update versions as needed. -->
11
+
12
+ - **Framework:** {{framework}}
13
+ - **Database:** {{database}}
14
+ - **Auth:** {{auth}}
15
+ - **Styling:** {{styling}}
16
+ - **Language:** TypeScript (strict mode)
17
+
18
+ ---
19
+
20
+ ## Active Skills
21
+
22
+ <!-- Skills installed based on detected stack -->
23
+
24
+ {{#each skills}}
25
+ - `{{this}}` - See `.claude/skills/{{this}}/SKILL.md`
26
+ {{/each}}
27
+
28
+ ---
29
+
30
+ ## Project-Specific Patterns
31
+
32
+ ### Established Conventions
33
+
34
+ <!-- Add patterns discovered during development -->
35
+
36
+ ```typescript
37
+ // Example: API response format
38
+ type ApiResponse<T> = {
39
+ data: T;
40
+ error?: string;
41
+ meta?: { page: number; total: number };
42
+ };
43
+ ```
44
+
45
+ ### File Organization
46
+
47
+ <!-- Document your project's structure conventions -->
48
+
49
+ ```
50
+ src/
51
+ ├── app/ # Next.js App Router pages
52
+ ├── components/ # Shared UI components
53
+ │ ├── ui/ # Primitives (Button, Input, etc.)
54
+ │ └── features/ # Feature-specific components
55
+ ├── lib/ # Utilities and helpers
56
+ ├── hooks/ # Custom React hooks
57
+ └── types/ # TypeScript type definitions
58
+ ```
59
+
60
+ ### Naming Conventions
61
+
62
+ <!-- Project-specific naming rules -->
63
+
64
+ - Components: PascalCase (`UserProfile.tsx`)
65
+ - Hooks: camelCase with `use` prefix (`useAuth.ts`)
66
+ - Utilities: camelCase (`formatDate.ts`)
67
+ - Types: PascalCase with descriptive suffix (`UserResponse`, `CreateUserInput`)
68
+
69
+ ---
70
+
71
+ ## Decisions & Rationale
72
+
73
+ <!-- Link to ADRs or explain key architectural choices -->
74
+
75
+ | Decision | Rationale | Date |
76
+ |----------|-----------|------|
77
+ | Use Server Components by default | Better performance, simpler mental model | {{date}} |
78
+ | Convex for real-time | Built-in subscriptions, type safety | {{date}} |
79
+
80
+ ---
81
+
82
+ ## Anti-Patterns for This Project
83
+
84
+ <!-- Things that don't work well in YOUR specific codebase -->
85
+
86
+ ### Don't Do This
87
+
88
+ ```typescript
89
+ // ❌ Don't use client-side data fetching for initial data
90
+ 'use client';
91
+ useEffect(() => { fetch('/api/data')... }, []);
92
+
93
+ // ✓ Fetch in Server Component instead
94
+ async function Page() {
95
+ const data = await getData();
96
+ return <ClientComponent initialData={data} />;
97
+ }
98
+ ```
99
+
100
+ ### Avoid These Patterns
101
+
102
+ - Don't create new API routes when direct DB access works
103
+ - Don't use Context for data that should come from Server Components
104
+ - Don't add `'use client'` unless interactivity is needed
105
+
106
+ ---
107
+
108
+ ## MCP Configuration
109
+
110
+ <!-- Stack-specific MCP preferences for this project -->
111
+
112
+ ### MCP Strategy
113
+
114
+ Configure in `.flydocs/config.json`:
115
+
116
+ ```json
117
+ {
118
+ "mcp": {
119
+ "preferred": ["context7", "figma"],
120
+ "fallbackOnly": ["linear"],
121
+ "stackSpecific": {
122
+ "convex": {
123
+ "note": "Use Context7 for docs, CLI for schema changes"
124
+ }
125
+ }
126
+ }
127
+ }
128
+ ```
129
+
130
+ - **preferred**: MCPs to use proactively (unique capabilities like Figma visuals, Context7 docs)
131
+ - **fallbackOnly**: MCPs with script alternatives (use scripts first, MCP if script fails)
132
+ - **stackSpecific**: Per-stack notes and usage guidance
133
+
134
+ ### Stack-Specific MCP Notes
135
+
136
+ <!-- Uncomment and customize for your stack -->
137
+
138
+ <!--
139
+ #### Convex
140
+ - Use Context7 MCP for Convex API documentation
141
+ - Prefer `convex dev` CLI for schema changes over direct mutations
142
+ - Query patterns: Use `.collect()` for small datasets, pagination for large
143
+ -->
144
+
145
+ <!--
146
+ #### Supabase
147
+ - Use Supabase MCP for database operations when available
148
+ - Prefer RLS policies over application-level auth checks
149
+ - Use database functions for complex operations
150
+ -->
151
+
152
+ <!--
153
+ #### Firebase
154
+ - Use Firebase MCP for Firestore operations
155
+ - Prefer security rules over client-side validation
156
+ - Use batch operations for multiple writes
157
+ -->
158
+
159
+ ---
160
+
161
+ ## Skill Overrides
162
+
163
+ <!-- Override specific skill recommendations for this project -->
164
+
165
+ ### nextjs
166
+
167
+ <!-- Example: Override default caching strategy -->
168
+
169
+ ```typescript
170
+ // This project uses shorter cache times due to real-time requirements
171
+ cacheLife('seconds'); // Instead of skill default 'hours'
172
+ ```
173
+
174
+ ### convex
175
+
176
+ <!-- Example: Project-specific schema conventions -->
177
+
178
+ ```typescript
179
+ // All tables must include audit fields
180
+ defineTable({
181
+ // ... fields
182
+ createdAt: v.number(),
183
+ updatedAt: v.number(),
184
+ createdBy: v.optional(v.id('users')),
185
+ });
186
+ ```
187
+
188
+ ---
189
+
190
+ ## Environment Variables
191
+
192
+ <!-- Document required env vars for this project -->
193
+
194
+ | Variable | Purpose | Required |
195
+ |----------|---------|----------|
196
+ | `DATABASE_URL` | Database connection | Yes |
197
+ | `NEXT_PUBLIC_API_URL` | Public API endpoint | Yes |
198
+ | `AUTH_SECRET` | Auth session encryption | Yes |
199
+
200
+ ---
201
+
202
+ ## Testing Patterns
203
+
204
+ <!-- Project-specific testing conventions -->
205
+
206
+ ```typescript
207
+ // Test file naming: *.test.ts or *.spec.ts
208
+ // Test location: Co-located with source files
209
+
210
+ // Example test structure
211
+ describe('UserService', () => {
212
+ it('creates a user with valid data', async () => {
213
+ // Arrange
214
+ const input = { name: 'Test', email: 'test@example.com' };
215
+
216
+ // Act
217
+ const result = await createUser(input);
218
+
219
+ // Assert
220
+ expect(result.id).toBeDefined();
221
+ });
222
+ });
223
+ ```
224
+
225
+ ---
226
+
227
+ *Last updated: {{date}}*
228
+ *FlyDocs version: 6.3.0*
@@ -0,0 +1,35 @@
1
+ <!--
2
+ LINEAR DEFAULT TEMPLATE
3
+ ========================
4
+ Copy this to Linear as the default issue template.
5
+ This is the ONLY template humans need in Linear.
6
+ Agents apply full templates via /refine.
7
+ -->
8
+
9
+ ## What
10
+
11
+ [One sentence - what is this about?]
12
+
13
+ ## Why
14
+
15
+ [Why does this matter? What's the problem or opportunity?]
16
+
17
+ ## Context
18
+
19
+ [Any additional details that would help understand this]
20
+
21
+ - Who discovered/requested this?
22
+ - When did it come up?
23
+ - How urgent does it feel?
24
+
25
+ ## Notes
26
+
27
+ [Anything else - links, screenshots, related issues]
28
+
29
+ ---
30
+
31
+ _Add `triage` label. Agent will classify and structure via `/refine`._
32
+
33
+
34
+
35
+