@botdigit/agent-blueprint 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.
Files changed (52) hide show
  1. package/AGENTS.md +204 -0
  2. package/LICENSE +21 -0
  3. package/PROMPT.md +22 -0
  4. package/README.md +248 -0
  5. package/bin/cli.js +160 -0
  6. package/frameworks/axum/SKILL.md +73 -0
  7. package/frameworks/django/SKILL.md +71 -0
  8. package/frameworks/fastapi/SKILL.md +73 -0
  9. package/frameworks/laravel/SKILL.md +67 -0
  10. package/frameworks/nextjs/SKILL.md +60 -0
  11. package/frameworks/rails/SKILL.md +78 -0
  12. package/frameworks/react/SKILL.md +58 -0
  13. package/frameworks/spring/SKILL.md +79 -0
  14. package/install.sh +83 -0
  15. package/llms.txt +26 -0
  16. package/package.json +47 -0
  17. package/skills/00-orchestrator/.gitkeep +26 -0
  18. package/skills/00-orchestrator/SKILL.md +368 -0
  19. package/skills/00-orchestrator/decision-tree.md +93 -0
  20. package/skills/00-orchestrator/project-detection.md +81 -0
  21. package/skills/00-orchestrator/skill-selection.md +87 -0
  22. package/skills/00-orchestrator/workflow.md +25 -0
  23. package/skills/01-discovery/SKILL.md +66 -0
  24. package/skills/02-project-context/SKILL.md +89 -0
  25. package/skills/03-business-architecture/SKILL.md +231 -0
  26. package/skills/04-architecture/SKILL.md +131 -0
  27. package/skills/05-documentation/SKILL.md +133 -0
  28. package/skills/06-codebase-audit/SKILL.md +127 -0
  29. package/skills/07-security/SKILL.md +159 -0
  30. package/skills/08-testing/SKILL.md +120 -0
  31. package/skills/09-performance/SKILL.md +96 -0
  32. package/skills/10-audit/SKILL.md +112 -0
  33. package/stacks/dotnet/SKILL.md +56 -0
  34. package/stacks/go/SKILL.md +61 -0
  35. package/stacks/java/SKILL.md +58 -0
  36. package/stacks/javascript/SKILL.md +47 -0
  37. package/stacks/php/SKILL.md +51 -0
  38. package/stacks/python/SKILL.md +52 -0
  39. package/stacks/ruby/SKILL.md +51 -0
  40. package/stacks/rust/SKILL.md +55 -0
  41. package/stacks/typescript/SKILL.md +55 -0
  42. package/templates/adr/ADR-TEMPLATE.md +64 -0
  43. package/templates/api-spec/API_SPEC_TEMPLATE.md +137 -0
  44. package/templates/architecture/ARCHITECTURE_TEMPLATE.md +81 -0
  45. package/templates/business-requirements/BUSINESS_REQUIREMENTS_TEMPLATE.md +77 -0
  46. package/templates/changelog/CHANGELOG_TEMPLATE.md +37 -0
  47. package/templates/database/DATABASE_TEMPLATE.md +77 -0
  48. package/templates/deployment/DEPLOYMENT_TEMPLATE.md +80 -0
  49. package/templates/project-brief/PROJECT_BRIEF_TEMPLATE.md +72 -0
  50. package/templates/runbook/RUNBOOK_TEMPLATE.md +54 -0
  51. package/templates/security/SECURITY_TEMPLATE.md +93 -0
  52. package/templates/testing/TESTING_TEMPLATE.md +87 -0
@@ -0,0 +1,127 @@
1
+ # 06-Codebase-Audit Skill
2
+
3
+ **Version:** 1.0.0
4
+ **Compatible:** project_skills >= 1.0
5
+ **Requires:** discovery, project-context
6
+ **Outputs:** codebase-audit.md, code-gaps.md
7
+
8
+ ---
9
+
10
+ ## Purpose
11
+
12
+ Inspect the existing codebase to understand what is there, how it is structured, what conventions it follows, and what problems exist — before making any changes.
13
+
14
+ Inspect before assuming.
15
+
16
+ ---
17
+
18
+ ## Process
19
+
20
+ ### 1. Map the code structure
21
+
22
+ - Directory layout
23
+ - Entry points
24
+ - Module/package boundaries
25
+ - Public vs private interfaces
26
+ - Shared code
27
+ - Standalone scripts
28
+
29
+ ### 2. Identify conventions
30
+
31
+ - Naming conventions (files, functions, variables, classes)
32
+ - Code style (formatting, linting, imports)
33
+ - Architectural patterns in use (MVC, layered, domain-driven, etc.)
34
+ - Error handling patterns
35
+ - Logging patterns
36
+ - Testing patterns (if tests exist)
37
+ - Configuration patterns
38
+
39
+ ### 3. Identify entry points and flows
40
+
41
+ For each major feature or flow:
42
+ - Where it enters the system
43
+ - What components it touches
44
+ - What data it reads and writes
45
+ - What external services it calls
46
+ - What errors can occur
47
+
48
+ ### 4. Assess code quality
49
+
50
+ Look for:
51
+ - Duplicated code
52
+ - Large functions or files
53
+ - Mixed responsibilities
54
+ - Copy-paste architecture
55
+ - Dead code
56
+ - commented-out code
57
+ - TODOs and FIXMEs (and whether they are tracked)
58
+ - Magic values
59
+ - Inconsistent error handling
60
+ - Missing input validation
61
+ - Missing type safety where the language supports it
62
+
63
+ ### 5. Assess test situation
64
+
65
+ - Do tests exist?
66
+ - What is tested?
67
+ - What is not tested?
68
+ - Test quality (unit, integration, end-to-end)
69
+ - Test coverage of critical paths
70
+ - Whether tests are run in CI
71
+
72
+ ### 6. Identify technical debt
73
+
74
+ Record debt in these categories:
75
+ - Code-level debt (duplication, complexity, poor naming)
76
+ - Architecture-level debt (wrong boundaries, coupling, missing abstractions)
77
+ - Test debt (missing tests, brittle tests, no CI)
78
+ - Documentation debt (missing, outdated)
79
+ - Dependency debt (outdated, unmaintained, too many)
80
+ - Security debt (see 07-security for detailed security audit)
81
+
82
+ ---
83
+
84
+ ## Output
85
+
86
+ ### codebase-audit.md
87
+
88
+ ```
89
+ Codebase Audit
90
+ ==============
91
+ Project: [name]
92
+ Audit date: [date]
93
+ Auditor: [agent or person]
94
+
95
+ Structure:
96
+ [description of code layout]
97
+
98
+ Conventions:
99
+ [naming, style, patterns detected]
100
+
101
+ Entry points:
102
+ [list]
103
+
104
+ Code quality:
105
+ Strengths: [what is good]
106
+ Problems: [what is not good]
107
+ Estimated complexity: [low | medium | high]
108
+
109
+ Test situation:
110
+ Tests exist: [yes | no]
111
+ Coverage: [description or "unknown"]
112
+ CI: [yes | no | unknown]
113
+
114
+ Technical debt:
115
+ [list by category]
116
+ ```
117
+
118
+ ### code-gaps.md
119
+
120
+ ```
121
+ Code Gaps
122
+ =========
123
+ [Gap ID]: [description]
124
+ Severity: [low | medium | high]
125
+ Category: [code | architecture | test | docs | dependency]
126
+ Recommendation: [what to do]
127
+ ```
@@ -0,0 +1,159 @@
1
+ # 07-Security Skill
2
+
3
+ **Version:** 1.0.0
4
+ **Compatible:** project_skills >= 1.0
5
+ **Requires:** discovery, project-context, business-architecture
6
+ **Outputs:** security.md, security-findings.md
7
+
8
+ ---
9
+
10
+ ## Purpose
11
+
12
+ Review the project's security posture. Security and data integrity come before features.
13
+
14
+ This skill is mandatory for projects that handle user data, payments, authentication, PII, or external integrations. It is optional for static sites and tools that do not handle sensitive data.
15
+
16
+ ---
17
+
18
+ ## Process
19
+
20
+ ### 1. Identify the attack surface
21
+
22
+ - What endpoints or interfaces accept input?
23
+ - What data is collected, stored, or transmitted?
24
+ - What authentication and authorization exist?
25
+ - What third-party services are integrated?
26
+ - What data crosses trust boundaries?
27
+ - What is exposed to the internet?
28
+ - What is internal-only?
29
+
30
+ ### 2. Review authentication
31
+
32
+ - How do users authenticate?
33
+ - Are credentials stored securely?
34
+ - Are sessions managed correctly?
35
+ - Is MFA available where it should be?
36
+ - Are password policies reasonable?
37
+ - Are there default or backdoor accounts?
38
+ - Is there an admin authentication path? Is it appropriately protected?
39
+
40
+ ### 3. Review authorization
41
+
42
+ - Can users access data they do not own?
43
+ - Can users perform actions they should not?
44
+ - Are authorization checks on every endpoint, or only some?
45
+ - Is there privilege escalation risk?
46
+ - Are roles and permissions clearly defined?
47
+ - Can permissions be bypassed by changing parameters, IDs, or paths?
48
+
49
+ ### 4. Review input handling
50
+
51
+ - Is all input validated?
52
+ - Is validation on the client sufficient? (it is not)
53
+ - Are SQL queries parameterized?
54
+ - Are queries using an ORM correctly (no raw SQL where avoidable)?
55
+ - Is output encoded for its context (HTML, JSON, SQL, shell)?
56
+ - Are file uploads handled safely?
57
+ - Are file types validated server-side?
58
+ - Are file sizes limited?
59
+
60
+ ### 5. Review data protection
61
+
62
+ - Is sensitive data encrypted at rest?
63
+ - Is data encrypted in transit?
64
+ - Are secrets in code, config files, or env vars? (all are problems; env vars are the least bad)
65
+ - Are API keys and tokens exposed in client-side code?
66
+ - Is PII handled according to the project's obligations?
67
+ - Is data retention defined and implemented?
68
+ - Can data be deleted when required?
69
+
70
+ ### 6. Review dependencies
71
+
72
+ - Are dependencies up to date?
73
+ - Are there known vulnerabilities in dependencies?
74
+ - Are unused dependencies removed?
75
+ - Are dependencies from trusted sources?
76
+ - Are lockfiles committed?
77
+
78
+ ### 7. Review logging and monitoring
79
+
80
+ - Are security events logged?
81
+ - Are logs free of sensitive data?
82
+ - Is there alerting for suspicious activity?
83
+ - Can you detect a breach?
84
+
85
+ ### 8. Review business logic security
86
+
87
+ Business logic vulnerabilities are not caught by generic scanners. Examine:
88
+ - Can pricing be manipulated?
89
+ - Can workflows be bypassed?
90
+ - Can state transitions be forced out of order?
91
+ - Can users affect data they should not?
92
+ - Are there race conditions in critical operations?
93
+ - Can features be accessed before they should be?
94
+ - Can free users access paid features?
95
+ - Can admin features be accessed by non-admins?
96
+
97
+ ### 9. Review infrastructure security
98
+
99
+ If infrastructure is detectable:
100
+ - Are containers run as root?
101
+ - Are secrets in environment variables or mounted files?
102
+ - Are security groups / firewalls appropriate?
103
+ - Is TLS configured?
104
+ - Are backups encrypted?
105
+ - Are there unnecessary exposed ports or services?
106
+
107
+ ---
108
+
109
+ ## Severity Levels
110
+
111
+ | Severity | Meaning | Response |
112
+ |---|---|---|
113
+ | Critical | Active exploit possible; data breach or system compromise likely | Fix immediately; block release if unfixed |
114
+ | High | Significant risk; exploitation likely with some effort | Fix before next release; prioritize |
115
+ | Medium | Notable risk; exploitation possible but constrained | Fix in current or next sprint |
116
+ | Low | Minor issue; hard to exploit or low impact | Track and fix when convenient |
117
+ | Informational | Worth noting; not a vulnerability | Document |
118
+
119
+ ---
120
+
121
+ ## Output
122
+
123
+ ### security.md
124
+
125
+ ```
126
+ Security
127
+ ========
128
+ Attack surface: [description]
129
+ Authentication: [mechanism, assessment]
130
+ Authorization: [mechanism, assessment]
131
+ Data protection: [assessment]
132
+ Dependencies: [assessment]
133
+ Logging: [assessment]
134
+ Infrastructure: [assessment if detectable]
135
+ Business logic security: [assessment]
136
+ ```
137
+
138
+ ### security-findings.md
139
+
140
+ ```
141
+ Security Findings
142
+ =================
143
+ [Finding ID]: [description]
144
+ Severity: [critical | high | medium | low | informational]
145
+ Location: [where found]
146
+ Impact: [what can happen]
147
+ Recommendation: [what to do]
148
+ ```
149
+
150
+ ---
151
+
152
+ ## Critical Rules
153
+
154
+ - Never hardcode secrets. Ever.
155
+ - Never trust client-side validation alone.
156
+ - Never skip authorization checks on any endpoint that touches sensitive data.
157
+ - Never store passwords in plaintext.
158
+ - Never expose internal errors to users.
159
+ - Never ignore known vulnerabilities in dependencies.
@@ -0,0 +1,120 @@
1
+ # 08-Testing Skill
2
+
3
+ **Version:** 1.0.0
4
+ **Compatible:** project_skills >= 1.0
5
+ **Requires:** discovery, project-context, codebase-audit
6
+ **Outputs:** testing.md, test-gaps.md
7
+
8
+ ---
9
+
10
+ ## Purpose
11
+
12
+ Establish a testing strategy and verify that changes are tested. Every major change needs tests.
13
+
14
+ ---
15
+
16
+ ## Process
17
+
18
+ ### 1. Assess current testing
19
+
20
+ - Do tests exist?
21
+ - What kinds? (unit, integration, end-to-end, contract, performance, security)
22
+ - What is tested and what is not?
23
+ - Is there a testing culture (tests written with features)?
24
+ - Are tests run in CI?
25
+ - How long do tests take?
26
+ - Are tests reliable (flaky or stable)?
27
+
28
+ ### 2. Identify what must be tested
29
+
30
+ Testing priority:
31
+
32
+ 1. **Business rules** — the rules that make the business work. If these are wrong, the product is wrong.
33
+ 2. **Data integrity** — operations that create, modify, or delete data. Wrong data is worse than no data.
34
+ 3. **Security boundaries** — authentication, authorization, access control.
35
+ 4. **Integration points** — external services, APIs, databases.
36
+ 5. **Critical user flows** — the paths users take to accomplish core tasks.
37
+ 6. **Edge cases** — failure modes, boundary conditions, invalid input.
38
+
39
+ ### 3. Define the testing strategy
40
+
41
+ For each type of test, decide:
42
+ - What it covers
43
+ - When it runs
44
+ - How it is written
45
+ - How it is maintained
46
+
47
+ Testing pyramid (general guidance, adapt to project):
48
+
49
+ - **Unit tests** — fast, isolated, many. Test business logic, pure functions, transformations.
50
+ - **Integration tests** — moderate speed, test component interactions, database, external services with test doubles where appropriate.
51
+ - **End-to-end tests** — slow, test complete user flows. Few, focused on critical paths.
52
+ - **Contract tests** — if APIs are consumed by other systems.
53
+ - **Performance tests** — if performance is a requirement. See 09-performance.
54
+
55
+ ### 4. Define test quality standards
56
+
57
+ - Tests must be deterministic. A test that fails intermittently erodes trust.
58
+ - Tests must assert something meaningful. Assertions that cannot fail are noise.
59
+ - Tests should fail for the right reason. A test that passes when it should fail is dangerous.
60
+ - Tests should be readable. A test is documentation of expected behavior.
61
+ - Tests should be maintainable. Brittle tests that break on every change will be deleted.
62
+
63
+ ### 5. Identify test gaps
64
+
65
+ Record gaps by priority. Not everything can be tested immediately. Prioritize by risk:
66
+ - Untested business-critical logic → highest priority
67
+ - Untested security boundaries → high priority
68
+ - Untested integrations → high priority
69
+ - Untested edge cases → medium priority
70
+ - Missing unit tests for non-critical code → lower priority
71
+
72
+ ---
73
+
74
+ ## What to Test
75
+
76
+ | What | Test Type | Priority |
77
+ |---|---|---|
78
+ | Business rules | Unit | Highest |
79
+ | Data integrity (create/update/delete) | Integration | Highest |
80
+ | Authentication | Integration / E2E | Highest |
81
+ | Authorization | Integration / E2E | Highest |
82
+ | Payment / billing logic | Unit + Integration | Highest |
83
+ | API endpoints | Integration / Contract | High |
84
+ | User workflows | E2E | High |
85
+ | Database migrations | Integration | High |
86
+ | File upload / processing | Integration | Medium |
87
+ | Email / notifications | Integration (with test double) | Medium |
88
+ | Third-party integration Contracts | Contract | Medium |
89
+ | Reporting / aggregation | Unit + Integration | Medium |
90
+ | UI rendering (non-interactive) | Unit / Component | Lower |
91
+ | Visual styling | Manual / visual regression | Lower |
92
+
93
+ ---
94
+
95
+ ## Output
96
+
97
+ ### testing.md
98
+
99
+ ```
100
+ Testing
101
+ =======
102
+ Current state: [assessment]
103
+ Test types in use: [list]
104
+ Test types missing: [list]
105
+ CI integration: [yes | no | partial]
106
+ Test reliability: [stable | flaky | unknown]
107
+ Critical paths tested: [list]
108
+ Critical paths NOT tested: [list]
109
+ ```
110
+
111
+ ### test-gaps.md
112
+
113
+ ```
114
+ Test Gaps
115
+ =========
116
+ [Gap ID]: [what is not tested]
117
+ Priority: [highest | high | medium | lower]
118
+ Risk: [what could go wrong]
119
+ Recommendation: [what test to write]
120
+ ```
@@ -0,0 +1,96 @@
1
+ # 09-Performance Skill
2
+
3
+ **Version:** 1.0.0
4
+ **Compatible:** project_skills >= 1.0
5
+ **Requires:** discovery, project-context, architecture
6
+ **Outputs:** performance.md, performance-findings.md
7
+
8
+ ---
9
+
10
+ ## Purpose
11
+
12
+ Review the project's performance characteristics and identify bottlenecks, inefficiencies, and risks. Performance only matters where it matters — do not optimize prematurely, but do not ignore real problems.
13
+
14
+ ---
15
+
16
+ ## Process
17
+
18
+ ### 1. Identify performance requirements
19
+
20
+ - What is the expected load?
21
+ - What are the response time expectations?
22
+ - What is the cost of being slow? (user experience, money, infrastructure)
23
+ - Are there SLAs or SLOs?
24
+ - If unknown, record "not specified" — do not assume.
25
+
26
+ ### 2. Identify potential bottlenecks
27
+
28
+ - Database queries (N+1, missing indexes, slow queries, unbounded result sets)
29
+ - External API calls (latency, rate limits, failure handling)
30
+ - File operations (size, frequency, storage backend)
31
+ - Computation (expensive operations, unbounded loops, missing caching)
32
+ - Memory usage (leaks, large allocations, unbounded growth)
33
+ - Network (chatty interfaces, large payloads, missing compression)
34
+ - Concurrency (blocking operations, thread pool exhaustion, lock contention)
35
+ - Startup time (if relevant — serverless cold start, CLI tool)
36
+ - Background jobs (queue backlog, job duration, retry storms)
37
+
38
+ ### 3. Assess caching
39
+
40
+ - What is cached?
41
+ - What cache layer is used?
42
+ - Is cache invalidation correct?
43
+ - What happens on cache failure?
44
+ - Are there stampedes or thundering herd risks?
45
+
46
+ ### 4. Assess data access patterns
47
+
48
+ - How is the database accessed?
49
+ - Are queries efficient?
50
+ - Are indexes present where needed?
51
+ - Are transactions used correctly?
52
+ - Is N+1 a problem?
53
+ - Are large queries paginated?
54
+
55
+ ### 5. Assess scalability
56
+
57
+ - What happens when load increases?
58
+ - Are there single points of failure?
59
+ - Can components scale independently?
60
+ - Are there resource limits?
61
+ - What is the current ceiling? (if detectable)
62
+
63
+ ### 6. Assess cost of performance
64
+
65
+ - Will optimizing this actually matter at the project's scale?
66
+ - Is the optimization worth the complexity it adds?
67
+ - Is there a simpler fix (index, query change, caching) before a major refactor?
68
+
69
+ ---
70
+
71
+ ## Output
72
+
73
+ ### performance.md
74
+
75
+ ```
76
+ Performance
77
+ ===========
78
+ Requirements: [specified | not specified]
79
+ Expected load: [description or "unknown"]
80
+ Bottlenecks identified: [list]
81
+ Caching: [assessment]
82
+ Data access: [assessment]
83
+ Scalability: [assessment]
84
+ ```
85
+
86
+ ### performance-findings.md
87
+
88
+ ```
89
+ Performance Findings
90
+ ====================
91
+ [Finding ID]: [description]
92
+ Severity: [critical | high | medium | low]
93
+ Impact: [what it causes]
94
+ Recommendation: [what to do]
95
+ Evidence: [query, trace, observation]
96
+ ```
@@ -0,0 +1,112 @@
1
+ # 10-Audit Skill
2
+
3
+ **Version:** 1.0.0
4
+ **Compatible:** project_skills >= 1.0
5
+ **Requires:** discovery, project-context
6
+ **Outputs:** audit-report.md, and outputs from 06, 07, 04, 03 as applicable
7
+
8
+ ---
9
+
10
+ ## Purpose
11
+
12
+ Run a comprehensive audit of the project. The audit skill is a composite that runs the codebase audit, security review, architecture review, and business architecture review in sequence, then synthesizes findings into a single report.
13
+
14
+ Use this skill when:
15
+ - Taking over an existing project
16
+ - Before a major rewrite or refactor
17
+ - As part of due diligence
18
+ - When a project feels "off" and you need a full picture
19
+ - Periodically on mature projects
20
+
21
+ ---
22
+
23
+ ## Process
24
+
25
+ ### Phase 1: Run sub-skills in order
26
+
27
+ 1. **06-codebase-audit** — inspect the code
28
+ 2. **07-security** — review security posture
29
+ 3. **04-architecture** — review architecture
30
+ 4. **03-business-architecture** — understand the business
31
+
32
+ The order matters. Security is run early because critical findings may stop the audit and require immediate action. Business understanding informs architecture review. Code audit informs both.
33
+
34
+ ### Phase 2: Synthesize
35
+
36
+ Combine findings into a unified report. Identify:
37
+ - Findings that appear across multiple domains (e.g., a security issue caused by an architectural problem)
38
+ - The highest-risk items
39
+ - The items that block progress
40
+ - The items that are quick wins
41
+ - The items that require product/business decisions
42
+
43
+ ### Phase 3: Prioritize
44
+
45
+ Prioritize by risk and effort:
46
+
47
+ | Priority | Criteria |
48
+ |---|---|
49
+ | P0 — Immediate | Security critical, data integrity risk, system down, legal/compliance risk |
50
+ | P1 — High | Significant risk, blocks major work, fundamental architectural problem |
51
+ | P2 — Medium | Notable problem, should be fixed before next release |
52
+ | P3 — Low | Improvement, nice to have, no immediate risk |
53
+ | P4 — Backlog | Minor, cosmetic, or long-term improvement |
54
+
55
+ ### Phase 4: Report
56
+
57
+ Write a report that a human can act on. It should answer:
58
+ - What is this project?
59
+ - What is its state?
60
+ - What are the most important findings?
61
+ - What should be done first, and why?
62
+ - What requires business decisions vs technical decisions?
63
+
64
+ ---
65
+
66
+ ## Output
67
+
68
+ ### audit-report.md
69
+
70
+ ```
71
+ Audit Report
72
+ ============
73
+ Project: [name]
74
+ Audit date: [date]
75
+ Auditor: [agent or person]
76
+ Project state: [greenfield | healthy | partial | broken]
77
+ Risk level: [low | medium | high]
78
+
79
+ Summary:
80
+ [2-5 sentence summary of the project and its state]
81
+
82
+ Findings by priority:
83
+ P0 — Immediate:
84
+ - [finding]
85
+ P1 — High:
86
+ - [finding]
87
+ P2 — Medium:
88
+ - [finding]
89
+ P3 — Low:
90
+ - [finding]
91
+
92
+ Strengths:
93
+ - [what is good]
94
+
95
+ Recommended next steps:
96
+ 1. [action] — [reason]
97
+ 2. ...
98
+
99
+ Business decisions needed:
100
+ - [decision that requires product/business input]
101
+
102
+ Technical decisions needed:
103
+ - [decision that is purely technical]
104
+ ```
105
+
106
+ ### Per-domain findings
107
+
108
+ The audit also produces the outputs of each sub-skill:
109
+ - `codebase-audit.md` and `code-gaps.md` (from 06)
110
+ - `security.md` and `security-findings.md` (from 07)
111
+ - `architecture.md` and `architecture-gaps.md` (from 04)
112
+ - `business-model.md`, `actors.md`, etc. (from 03)
@@ -0,0 +1,56 @@
1
+ # .NET Stack Skill
2
+
3
+ **Version:** 1.0.0
4
+ **Compatible:** project_skills >= 1.0
5
+ **Requires:** (activated by orchestrator on detection)
6
+ **Outputs:** (none — guidance only)
7
+
8
+ ---
9
+
10
+ ## Purpose
11
+
12
+ Guidance for working with C# / .NET projects. Activated automatically when `*.csproj`, `*.sln`, or `.cs` files are detected.
13
+
14
+ ---
15
+
16
+ ## Conventions
17
+
18
+ ### Version
19
+
20
+ - .NET 8 or .NET 9 are current LTS/current versions. The project's target framework is in `*.csproj`.
21
+ - Follow the project's version.
22
+
23
+ ### Style
24
+
25
+ - Follow the project's style configuration. Roslyn analyzers, `.editorconfig`, and formatters are the project's choice.
26
+ - C# conventions: explicit is better than implicit. Use the type system.
27
+
28
+ ### Type system
29
+
30
+ - C# has a static type system. Use it.
31
+ - `var` is acceptable when the type is obvious from the assignment. Do not use it to obscure the type.
32
+ - Records, tuples, pattern matching, and nullable reference types are features. Use them where they help.
33
+
34
+ ### Error handling
35
+
36
+ - Use exceptions for exceptional conditions.
37
+ - Do not swallow exceptions.
38
+ - Consider `Result` patterns for expected failures in some codebases.
39
+
40
+ ### Dependencies
41
+
42
+ - `*.csproj` manages dependencies. `packages.lock.json` or equivalent should be committed for applications.
43
+ - Review NuGet packages for maintenance.
44
+
45
+ ### Tooling
46
+
47
+ - The project's analyzers and formatters are the project's choice.
48
+
49
+ ---
50
+
51
+ ## Anti-patterns
52
+
53
+ - Swallowed exceptions.
54
+ - Overuse of `dynamic`.
55
+ - Large classes with mixed responsibilities.
56
+ - Ignoring nullable reference types (if enabled).