create-specfuse 0.7.0 → 0.9.1
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 +55 -144
- package/dist/index.d.ts +2 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +21 -11
- package/dist/index.js.map +1 -1
- package/dist/prompts.d.ts +2 -2
- package/dist/prompts.d.ts.map +1 -1
- package/dist/prompts.js +3 -82
- package/dist/prompts.js.map +1 -1
- package/dist/scaffolder.d.ts.map +1 -1
- package/dist/scaffolder.js +7 -44
- package/dist/scaffolder.js.map +1 -1
- package/dist/templates/claude-md.d.ts.map +1 -1
- package/dist/templates/claude-md.js +7 -23
- package/dist/templates/claude-md.js.map +1 -1
- package/dist/templates/claude-settings.d.ts +1 -2
- package/dist/templates/claude-settings.d.ts.map +1 -1
- package/dist/templates/claude-settings.js +2 -2
- package/dist/templates/claude-settings.js.map +1 -1
- package/dist/templates/fusereview-skill.d.ts +1 -1
- package/dist/templates/fusereview-skill.d.ts.map +1 -1
- package/dist/templates/fusereview-skill.js +2 -10
- package/dist/templates/fusereview-skill.js.map +1 -1
- package/dist/templates/gitignore.d.ts +1 -2
- package/dist/templates/gitignore.d.ts.map +1 -1
- package/dist/templates/gitignore.js +2 -11
- package/dist/templates/gitignore.js.map +1 -1
- package/dist/templates/openspec-config.d.ts +1 -2
- package/dist/templates/openspec-config.d.ts.map +1 -1
- package/dist/templates/openspec-config.js +34 -3
- package/dist/templates/openspec-config.js.map +1 -1
- package/dist/types.d.ts +0 -24
- package/dist/types.d.ts.map +1 -1
- package/dist/utils/tools.d.ts +0 -3
- package/dist/utils/tools.d.ts.map +1 -1
- package/dist/utils/tools.js +25 -38
- package/dist/utils/tools.js.map +1 -1
- package/package.json +1 -1
- package/dist/stacks/bash.d.ts +0 -5
- package/dist/stacks/bash.d.ts.map +0 -1
- package/dist/stacks/bash.js +0 -66
- package/dist/stacks/bash.js.map +0 -1
- package/dist/stacks/cpp-cmake.d.ts +0 -5
- package/dist/stacks/cpp-cmake.d.ts.map +0 -1
- package/dist/stacks/cpp-cmake.js +0 -74
- package/dist/stacks/cpp-cmake.js.map +0 -1
- package/dist/stacks/detect.d.ts +0 -11
- package/dist/stacks/detect.d.ts.map +0 -1
- package/dist/stacks/detect.js +0 -104
- package/dist/stacks/detect.js.map +0 -1
- package/dist/stacks/dotnet.d.ts +0 -5
- package/dist/stacks/dotnet.d.ts.map +0 -1
- package/dist/stacks/dotnet.js +0 -68
- package/dist/stacks/dotnet.js.map +0 -1
- package/dist/stacks/elixir.d.ts +0 -5
- package/dist/stacks/elixir.d.ts.map +0 -1
- package/dist/stacks/elixir.js +0 -68
- package/dist/stacks/elixir.js.map +0 -1
- package/dist/stacks/go.d.ts +0 -5
- package/dist/stacks/go.d.ts.map +0 -1
- package/dist/stacks/go.js +0 -68
- package/dist/stacks/go.js.map +0 -1
- package/dist/stacks/index.d.ts +0 -7
- package/dist/stacks/index.d.ts.map +0 -1
- package/dist/stacks/index.js +0 -84
- package/dist/stacks/index.js.map +0 -1
- package/dist/stacks/java-gradle.d.ts +0 -5
- package/dist/stacks/java-gradle.d.ts.map +0 -1
- package/dist/stacks/java-gradle.js +0 -69
- package/dist/stacks/java-gradle.js.map +0 -1
- package/dist/stacks/java-maven.d.ts +0 -5
- package/dist/stacks/java-maven.d.ts.map +0 -1
- package/dist/stacks/java-maven.js +0 -67
- package/dist/stacks/java-maven.js.map +0 -1
- package/dist/stacks/kotlin.d.ts +0 -5
- package/dist/stacks/kotlin.d.ts.map +0 -1
- package/dist/stacks/kotlin.js +0 -69
- package/dist/stacks/kotlin.js.map +0 -1
- package/dist/stacks/php.d.ts +0 -5
- package/dist/stacks/php.d.ts.map +0 -1
- package/dist/stacks/php.js +0 -68
- package/dist/stacks/php.js.map +0 -1
- package/dist/stacks/python-fastapi.d.ts +0 -5
- package/dist/stacks/python-fastapi.d.ts.map +0 -1
- package/dist/stacks/python-fastapi.js +0 -75
- package/dist/stacks/python-fastapi.js.map +0 -1
- package/dist/stacks/ruby.d.ts +0 -5
- package/dist/stacks/ruby.d.ts.map +0 -1
- package/dist/stacks/ruby.js +0 -69
- package/dist/stacks/ruby.js.map +0 -1
- package/dist/stacks/rust.d.ts +0 -5
- package/dist/stacks/rust.d.ts.map +0 -1
- package/dist/stacks/rust.js +0 -65
- package/dist/stacks/rust.js.map +0 -1
- package/dist/stacks/scala-sbt.d.ts +0 -5
- package/dist/stacks/scala-sbt.d.ts.map +0 -1
- package/dist/stacks/scala-sbt.js +0 -68
- package/dist/stacks/scala-sbt.js.map +0 -1
- package/dist/stacks/schema.d.ts +0 -91
- package/dist/stacks/schema.d.ts.map +0 -1
- package/dist/stacks/schema.js +0 -23
- package/dist/stacks/schema.js.map +0 -1
- package/dist/stacks/swift.d.ts +0 -5
- package/dist/stacks/swift.d.ts.map +0 -1
- package/dist/stacks/swift.js +0 -69
- package/dist/stacks/swift.js.map +0 -1
- package/dist/stacks/typescript-react.d.ts +0 -5
- package/dist/stacks/typescript-react.d.ts.map +0 -1
- package/dist/stacks/typescript-react.js +0 -73
- package/dist/stacks/typescript-react.js.map +0 -1
package/dist/stacks/swift.js
DELETED
|
@@ -1,69 +0,0 @@
|
|
|
1
|
-
export const swiftStack = {
|
|
2
|
-
id: 'swift',
|
|
3
|
-
label: 'Swift (SPM)',
|
|
4
|
-
languages: ['Swift'],
|
|
5
|
-
architecture: 'Protocol-oriented / MVVM',
|
|
6
|
-
commands: {
|
|
7
|
-
build: 'swift build',
|
|
8
|
-
test: 'swift test',
|
|
9
|
-
lint: 'swiftlint',
|
|
10
|
-
format: 'swift-format format -r Sources/',
|
|
11
|
-
},
|
|
12
|
-
errorHandling: 'Swift Error protocol + Result type + do-try-catch',
|
|
13
|
-
concurrency: 'Swift structured concurrency (async/await + TaskGroup + actors)',
|
|
14
|
-
permissions: [
|
|
15
|
-
'Bash(swift *)',
|
|
16
|
-
'Bash(swiftlint *)',
|
|
17
|
-
'Bash(swift-format *)',
|
|
18
|
-
'Bash(xcodebuild *)',
|
|
19
|
-
],
|
|
20
|
-
gitignorePatterns: [
|
|
21
|
-
'.build/',
|
|
22
|
-
'*.xcodeproj/',
|
|
23
|
-
'*.xcworkspace/',
|
|
24
|
-
'DerivedData/',
|
|
25
|
-
'Package.resolved',
|
|
26
|
-
],
|
|
27
|
-
openspecContext: `Tech stack: Swift (Swift Package Manager)
|
|
28
|
-
Build: swift build
|
|
29
|
-
Testing: swift test
|
|
30
|
-
Code style: swiftlint + swift-format
|
|
31
|
-
Architecture: Protocol-oriented / MVVM
|
|
32
|
-
Error handling: Swift Error protocol + Result type + do-try-catch
|
|
33
|
-
Concurrency: Swift structured concurrency (async/await + TaskGroup + actors)`,
|
|
34
|
-
openspecRules: {
|
|
35
|
-
proposal: [
|
|
36
|
-
'Always include a "Non-goals" section to explicitly scope out what this change does NOT do',
|
|
37
|
-
'Include "Trade-offs" section with at least 2 alternative approaches considered',
|
|
38
|
-
'Must reference affected modules/targets by name',
|
|
39
|
-
'Keep proposals under 800 words',
|
|
40
|
-
],
|
|
41
|
-
design: [
|
|
42
|
-
'Must include a dependency diagram (ASCII or mermaid) showing module relationships',
|
|
43
|
-
'Must specify public API surface (protocols, struct/class signatures)',
|
|
44
|
-
'Must address error handling strategy for the change',
|
|
45
|
-
'Must address concurrency implications if applicable',
|
|
46
|
-
],
|
|
47
|
-
specs: [
|
|
48
|
-
'Each spec must be independently testable',
|
|
49
|
-
'Specs must define both success and failure behaviors',
|
|
50
|
-
'Include boundary conditions and edge cases',
|
|
51
|
-
'Reference specific types/protocols, not vague descriptions',
|
|
52
|
-
],
|
|
53
|
-
tasks: [
|
|
54
|
-
'Break tasks into chunks of max 2 hours of work',
|
|
55
|
-
'Each task must have a clear "done" definition verifiable by running a command',
|
|
56
|
-
'Tasks must follow TDD order - write test first, then implement, then refactor',
|
|
57
|
-
'Every task must include a verification command (swift test / specific test target)',
|
|
58
|
-
'Mark blocking dependencies explicitly between tasks',
|
|
59
|
-
],
|
|
60
|
-
},
|
|
61
|
-
};
|
|
62
|
-
export const swiftDetectionConfig = {
|
|
63
|
-
stackId: 'swift',
|
|
64
|
-
markerFiles: ['Package.swift'],
|
|
65
|
-
markerDirs: [],
|
|
66
|
-
fileExtensions: ['.swift'],
|
|
67
|
-
priority: 10,
|
|
68
|
-
};
|
|
69
|
-
//# sourceMappingURL=swift.js.map
|
package/dist/stacks/swift.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"swift.js","sourceRoot":"","sources":["../../src/stacks/swift.ts"],"names":[],"mappings":"AAGA,MAAM,CAAC,MAAM,UAAU,GAAiB;IACtC,EAAE,EAAE,OAAO;IACX,KAAK,EAAE,aAAa;IACpB,SAAS,EAAE,CAAC,OAAO,CAAC;IACpB,YAAY,EAAE,0BAA0B;IACxC,QAAQ,EAAE;QACR,KAAK,EAAE,aAAa;QACpB,IAAI,EAAE,YAAY;QAClB,IAAI,EAAE,WAAW;QACjB,MAAM,EAAE,iCAAiC;KAC1C;IACD,aAAa,EAAE,mDAAmD;IAClE,WAAW,EAAE,iEAAiE;IAC9E,WAAW,EAAE;QACX,eAAe;QACf,mBAAmB;QACnB,sBAAsB;QACtB,oBAAoB;KACrB;IACD,iBAAiB,EAAE;QACjB,SAAS;QACT,cAAc;QACd,gBAAgB;QAChB,cAAc;QACd,kBAAkB;KACnB;IACD,eAAe,EAAE;;;;;;6EAM0D;IAC3E,aAAa,EAAE;QACb,QAAQ,EAAE;YACR,2FAA2F;YAC3F,gFAAgF;YAChF,iDAAiD;YACjD,gCAAgC;SACjC;QACD,MAAM,EAAE;YACN,mFAAmF;YACnF,sEAAsE;YACtE,qDAAqD;YACrD,qDAAqD;SACtD;QACD,KAAK,EAAE;YACL,0CAA0C;YAC1C,sDAAsD;YACtD,4CAA4C;YAC5C,4DAA4D;SAC7D;QACD,KAAK,EAAE;YACL,gDAAgD;YAChD,+EAA+E;YAC/E,+EAA+E;YAC/E,oFAAoF;YACpF,qDAAqD;SACtD;KACF;CACF,CAAC;AAEF,MAAM,CAAC,MAAM,oBAAoB,GAAoB;IACnD,OAAO,EAAE,OAAO;IAChB,WAAW,EAAE,CAAC,eAAe,CAAC;IAC9B,UAAU,EAAE,EAAE;IACd,cAAc,EAAE,CAAC,QAAQ,CAAC;IAC1B,QAAQ,EAAE,EAAE;CACb,CAAC"}
|
|
@@ -1,5 +0,0 @@
|
|
|
1
|
-
import type { StackProfile } from '../types.js';
|
|
2
|
-
import type { DetectionConfig } from './detect.js';
|
|
3
|
-
export declare const typescriptReactStack: StackProfile;
|
|
4
|
-
export declare const typescriptReactDetectionConfig: DetectionConfig;
|
|
5
|
-
//# sourceMappingURL=typescript-react.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"typescript-react.d.ts","sourceRoot":"","sources":["../../src/stacks/typescript-react.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAChD,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAEnD,eAAO,MAAM,oBAAoB,EAAE,YAgElC,CAAC;AAEF,eAAO,MAAM,8BAA8B,EAAE,eAM5C,CAAC"}
|
|
@@ -1,73 +0,0 @@
|
|
|
1
|
-
export const typescriptReactStack = {
|
|
2
|
-
id: 'typescript-react',
|
|
3
|
-
label: 'TypeScript + React',
|
|
4
|
-
languages: ['TypeScript'],
|
|
5
|
-
framework: 'React',
|
|
6
|
-
architecture: 'Component-based / Feature-sliced',
|
|
7
|
-
commands: {
|
|
8
|
-
build: 'npm run build',
|
|
9
|
-
test: 'npx vitest run',
|
|
10
|
-
lint: 'npx eslint .',
|
|
11
|
-
format: 'npx prettier --write .',
|
|
12
|
-
typecheck: 'npx tsc --noEmit',
|
|
13
|
-
},
|
|
14
|
-
errorHandling: 'TypeScript strict mode + Error boundaries + React Suspense',
|
|
15
|
-
concurrency: 'React concurrent features + async/await',
|
|
16
|
-
permissions: [
|
|
17
|
-
'Bash(npm test *)',
|
|
18
|
-
'Bash(npm run *)',
|
|
19
|
-
'Bash(npx vitest *)',
|
|
20
|
-
'Bash(npx tsc *)',
|
|
21
|
-
'Bash(npx eslint *)',
|
|
22
|
-
'Bash(npx prettier *)',
|
|
23
|
-
],
|
|
24
|
-
gitignorePatterns: [
|
|
25
|
-
'node_modules/',
|
|
26
|
-
'/dist/',
|
|
27
|
-
'/build/',
|
|
28
|
-
'.next/',
|
|
29
|
-
'*.tsbuildinfo',
|
|
30
|
-
],
|
|
31
|
-
openspecContext: `Tech stack: TypeScript + React frontend / full-stack
|
|
32
|
-
Build: npm run build
|
|
33
|
-
Testing: vitest
|
|
34
|
-
Code style: ESLint + Prettier
|
|
35
|
-
Architecture: Component-based / Feature-sliced
|
|
36
|
-
Error handling: TypeScript strict mode + Error boundaries
|
|
37
|
-
Concurrency: React concurrent features + async/await`,
|
|
38
|
-
openspecRules: {
|
|
39
|
-
proposal: [
|
|
40
|
-
'Always include a "Non-goals" section to explicitly scope out what this change does NOT do',
|
|
41
|
-
'Include "Trade-offs" section with at least 2 alternative approaches considered',
|
|
42
|
-
'Must reference affected components/modules by name',
|
|
43
|
-
'Keep proposals under 800 words',
|
|
44
|
-
],
|
|
45
|
-
design: [
|
|
46
|
-
'Must include a component hierarchy diagram',
|
|
47
|
-
'Must specify public API surface (props interfaces, hook signatures)',
|
|
48
|
-
'Must address state management strategy',
|
|
49
|
-
'Must address accessibility (a11y) implications',
|
|
50
|
-
],
|
|
51
|
-
specs: [
|
|
52
|
-
'Each spec must be independently testable',
|
|
53
|
-
'Specs must define both success and failure behaviors',
|
|
54
|
-
'Include boundary conditions and edge cases',
|
|
55
|
-
'Reference specific component/hook names, not vague descriptions',
|
|
56
|
-
],
|
|
57
|
-
tasks: [
|
|
58
|
-
'Break tasks into chunks of max 2 hours of work',
|
|
59
|
-
'Each task must have a clear "done" definition verifiable by running a command',
|
|
60
|
-
'Tasks must follow TDD order - write test first, then implement, then refactor',
|
|
61
|
-
'Every task must include a verification command (npx vitest run / specific test)',
|
|
62
|
-
'Mark blocking dependencies explicitly between tasks',
|
|
63
|
-
],
|
|
64
|
-
},
|
|
65
|
-
};
|
|
66
|
-
export const typescriptReactDetectionConfig = {
|
|
67
|
-
stackId: 'typescript-react',
|
|
68
|
-
markerFiles: ['package.json', 'tsconfig.json'],
|
|
69
|
-
markerDirs: [],
|
|
70
|
-
fileExtensions: ['.tsx', '.ts'],
|
|
71
|
-
priority: 20,
|
|
72
|
-
};
|
|
73
|
-
//# sourceMappingURL=typescript-react.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"typescript-react.js","sourceRoot":"","sources":["../../src/stacks/typescript-react.ts"],"names":[],"mappings":"AAGA,MAAM,CAAC,MAAM,oBAAoB,GAAiB;IAChD,EAAE,EAAE,kBAAkB;IACtB,KAAK,EAAE,oBAAoB;IAC3B,SAAS,EAAE,CAAC,YAAY,CAAC;IACzB,SAAS,EAAE,OAAO;IAClB,YAAY,EAAE,kCAAkC;IAChD,QAAQ,EAAE;QACR,KAAK,EAAE,eAAe;QACtB,IAAI,EAAE,gBAAgB;QACtB,IAAI,EAAE,cAAc;QACpB,MAAM,EAAE,wBAAwB;QAChC,SAAS,EAAE,kBAAkB;KAC9B;IACD,aAAa,EAAE,4DAA4D;IAC3E,WAAW,EAAE,yCAAyC;IACtD,WAAW,EAAE;QACX,kBAAkB;QAClB,iBAAiB;QACjB,oBAAoB;QACpB,iBAAiB;QACjB,oBAAoB;QACpB,sBAAsB;KACvB;IACD,iBAAiB,EAAE;QACjB,eAAe;QACf,QAAQ;QACR,SAAS;QACT,QAAQ;QACR,eAAe;KAChB;IACD,eAAe,EAAE;;;;;;qDAMkC;IACnD,aAAa,EAAE;QACb,QAAQ,EAAE;YACR,2FAA2F;YAC3F,gFAAgF;YAChF,oDAAoD;YACpD,gCAAgC;SACjC;QACD,MAAM,EAAE;YACN,4CAA4C;YAC5C,qEAAqE;YACrE,wCAAwC;YACxC,gDAAgD;SACjD;QACD,KAAK,EAAE;YACL,0CAA0C;YAC1C,sDAAsD;YACtD,4CAA4C;YAC5C,iEAAiE;SAClE;QACD,KAAK,EAAE;YACL,gDAAgD;YAChD,+EAA+E;YAC/E,+EAA+E;YAC/E,iFAAiF;YACjF,qDAAqD;SACtD;KACF;CACF,CAAC;AAEF,MAAM,CAAC,MAAM,8BAA8B,GAAoB;IAC7D,OAAO,EAAE,kBAAkB;IAC3B,WAAW,EAAE,CAAC,cAAc,EAAE,eAAe,CAAC;IAC9C,UAAU,EAAE,EAAE;IACd,cAAc,EAAE,CAAC,MAAM,EAAE,KAAK,CAAC;IAC/B,QAAQ,EAAE,EAAE;CACb,CAAC"}
|