@seanmars/tospec 0.21.0 → 0.23.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/CHANGELOG.md +31 -0
- package/README.md +6 -4
- package/assets/rules/tospec/single-source-of-truth.md +1 -1
- package/dist/core/init.d.ts.map +1 -1
- package/dist/core/init.js +5 -6
- package/dist/core/init.js.map +1 -1
- package/dist/core/migrate.js +1 -1
- package/dist/core/migrate.js.map +1 -1
- package/dist/core/shared/index.d.ts +1 -1
- package/dist/core/shared/index.d.ts.map +1 -1
- package/dist/core/shared/index.js +1 -1
- package/dist/core/shared/index.js.map +1 -1
- package/dist/core/shared/skill-generation.d.ts +2 -25
- package/dist/core/shared/skill-generation.d.ts.map +1 -1
- package/dist/core/shared/skill-generation.js +16 -60
- package/dist/core/shared/skill-generation.js.map +1 -1
- package/dist/core/shared/tool-detection.d.ts +1 -2
- package/dist/core/shared/tool-detection.d.ts.map +1 -1
- package/dist/core/shared/tool-detection.js +1 -2
- package/dist/core/shared/tool-detection.js.map +1 -1
- package/dist/core/{command-generation → shared}/yaml.d.ts +1 -2
- package/dist/core/shared/yaml.d.ts.map +1 -0
- package/dist/core/{command-generation → shared}/yaml.js +1 -2
- package/dist/core/shared/yaml.js.map +1 -0
- package/dist/core/skill-metrics.d.ts +3 -2
- package/dist/core/skill-metrics.d.ts.map +1 -1
- package/dist/core/skill-metrics.js +3 -2
- package/dist/core/skill-metrics.js.map +1 -1
- package/dist/core/templates/fragments/interview.d.ts +1 -1
- package/dist/core/templates/fragments/interview.d.ts.map +1 -1
- package/dist/core/templates/fragments/interview.js +1 -1
- package/dist/core/templates/fragments/interview.js.map +1 -1
- package/dist/core/templates/fragments/verify.d.ts +3 -13
- package/dist/core/templates/fragments/verify.d.ts.map +1 -1
- package/dist/core/templates/fragments/verify.js +5 -13
- package/dist/core/templates/fragments/verify.js.map +1 -1
- package/dist/core/templates/skill-templates.d.ts +10 -10
- package/dist/core/templates/skill-templates.d.ts.map +1 -1
- package/dist/core/templates/skill-templates.js +9 -9
- package/dist/core/templates/skill-templates.js.map +1 -1
- package/dist/core/templates/types.d.ts +0 -7
- package/dist/core/templates/types.d.ts.map +1 -1
- package/dist/core/templates/workflows/apply.d.ts +1 -3
- package/dist/core/templates/workflows/apply.d.ts.map +1 -1
- package/dist/core/templates/workflows/apply.js +9 -42
- package/dist/core/templates/workflows/apply.js.map +1 -1
- package/dist/core/templates/workflows/archive.d.ts +1 -2
- package/dist/core/templates/workflows/archive.d.ts.map +1 -1
- package/dist/core/templates/workflows/archive.js +1 -14
- package/dist/core/templates/workflows/archive.js.map +1 -1
- package/dist/core/templates/workflows/decision.d.ts +1 -2
- package/dist/core/templates/workflows/decision.d.ts.map +1 -1
- package/dist/core/templates/workflows/decision.js +0 -13
- package/dist/core/templates/workflows/decision.js.map +1 -1
- package/dist/core/templates/workflows/explore.d.ts +1 -2
- package/dist/core/templates/workflows/explore.d.ts.map +1 -1
- package/dist/core/templates/workflows/explore.js +3 -16
- package/dist/core/templates/workflows/explore.js.map +1 -1
- package/dist/core/templates/workflows/grill.d.ts +1 -2
- package/dist/core/templates/workflows/grill.d.ts.map +1 -1
- package/dist/core/templates/workflows/grill.js +1 -14
- package/dist/core/templates/workflows/grill.js.map +1 -1
- package/dist/core/templates/workflows/issue.d.ts +1 -2
- package/dist/core/templates/workflows/issue.d.ts.map +1 -1
- package/dist/core/templates/workflows/issue.js +4 -17
- package/dist/core/templates/workflows/issue.js.map +1 -1
- package/dist/core/templates/workflows/propose.d.ts +1 -2
- package/dist/core/templates/workflows/propose.d.ts.map +1 -1
- package/dist/core/templates/workflows/propose.js +1 -14
- package/dist/core/templates/workflows/propose.js.map +1 -1
- package/dist/core/templates/workflows/sync.d.ts +1 -2
- package/dist/core/templates/workflows/sync.d.ts.map +1 -1
- package/dist/core/templates/workflows/sync.js +0 -13
- package/dist/core/templates/workflows/sync.js.map +1 -1
- package/dist/core/templates/workflows/update.d.ts +1 -2
- package/dist/core/templates/workflows/update.d.ts.map +1 -1
- package/dist/core/templates/workflows/update.js +4 -17
- package/dist/core/templates/workflows/update.js.map +1 -1
- package/dist/core/update.d.ts.map +1 -1
- package/dist/core/update.js +4 -6
- package/dist/core/update.js.map +1 -1
- package/package.json +2 -1
- package/schemas/decision/schema.yaml +1 -1
- package/schemas/issue/schema.yaml +4 -4
- package/schemas/sdd/schema.yaml +4 -3
- package/dist/core/command-generation/adapters/claude.d.ts +0 -7
- package/dist/core/command-generation/adapters/claude.d.ts.map +0 -1
- package/dist/core/command-generation/adapters/claude.js +0 -28
- package/dist/core/command-generation/adapters/claude.js.map +0 -1
- package/dist/core/command-generation/adapters/index.d.ts +0 -7
- package/dist/core/command-generation/adapters/index.d.ts.map +0 -1
- package/dist/core/command-generation/adapters/index.js +0 -8
- package/dist/core/command-generation/adapters/index.js.map +0 -1
- package/dist/core/command-generation/generator.d.ts +0 -4
- package/dist/core/command-generation/generator.d.ts.map +0 -1
- package/dist/core/command-generation/generator.js +0 -10
- package/dist/core/command-generation/generator.js.map +0 -1
- package/dist/core/command-generation/index.d.ts +0 -8
- package/dist/core/command-generation/index.d.ts.map +0 -1
- package/dist/core/command-generation/index.js +0 -3
- package/dist/core/command-generation/index.js.map +0 -1
- package/dist/core/command-generation/types.d.ts +0 -30
- package/dist/core/command-generation/types.d.ts.map +0 -1
- package/dist/core/command-generation/types.js +0 -2
- package/dist/core/command-generation/types.js.map +0 -1
- package/dist/core/command-generation/yaml.d.ts.map +0 -1
- package/dist/core/command-generation/yaml.js.map +0 -1
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
import type { ToolCommandAdapter } from '../types.js';
|
|
2
|
-
import { claudeAdapter } from './claude.js';
|
|
3
|
-
export { claudeAdapter };
|
|
4
|
-
/** Adding a tool means adding it here; callers resolve by `toolId`. */
|
|
5
|
-
export declare const COMMAND_ADAPTERS: readonly ToolCommandAdapter[];
|
|
6
|
-
export declare function findCommandAdapter(toolId: string): ToolCommandAdapter | undefined;
|
|
7
|
-
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/core/command-generation/adapters/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,aAAa,CAAC;AACtD,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAE5C,OAAO,EAAE,aAAa,EAAE,CAAC;AAEzB,uEAAuE;AACvE,eAAO,MAAM,gBAAgB,EAAE,SAAS,kBAAkB,EAAoB,CAAC;AAE/E,wBAAgB,kBAAkB,CAAC,MAAM,EAAE,MAAM,GAAG,kBAAkB,GAAG,SAAS,CAEjF"}
|
|
@@ -1,8 +0,0 @@
|
|
|
1
|
-
import { claudeAdapter } from './claude.js';
|
|
2
|
-
export { claudeAdapter };
|
|
3
|
-
/** Adding a tool means adding it here; callers resolve by `toolId`. */
|
|
4
|
-
export const COMMAND_ADAPTERS = [claudeAdapter];
|
|
5
|
-
export function findCommandAdapter(toolId) {
|
|
6
|
-
return COMMAND_ADAPTERS.find((adapter) => adapter.toolId === toolId);
|
|
7
|
-
}
|
|
8
|
-
//# sourceMappingURL=index.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/core/command-generation/adapters/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAE5C,OAAO,EAAE,aAAa,EAAE,CAAC;AAEzB,uEAAuE;AACvE,MAAM,CAAC,MAAM,gBAAgB,GAAkC,CAAC,aAAa,CAAC,CAAC;AAE/E,MAAM,UAAU,kBAAkB,CAAC,MAAc;IAC/C,OAAO,gBAAgB,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,MAAM,KAAK,MAAM,CAAC,CAAC;AACvE,CAAC"}
|
|
@@ -1,4 +0,0 @@
|
|
|
1
|
-
import type { CommandContent, ToolCommandAdapter, GeneratedCommand } from './types.js';
|
|
2
|
-
export declare function generateCommand(content: CommandContent, adapter: ToolCommandAdapter): GeneratedCommand;
|
|
3
|
-
export declare function generateCommands(contents: CommandContent[], adapter: ToolCommandAdapter): GeneratedCommand[];
|
|
4
|
-
//# sourceMappingURL=generator.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"generator.d.ts","sourceRoot":"","sources":["../../../src/core/command-generation/generator.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,kBAAkB,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAC;AAEvF,wBAAgB,eAAe,CAC7B,OAAO,EAAE,cAAc,EACvB,OAAO,EAAE,kBAAkB,GAC1B,gBAAgB,CAKlB;AAED,wBAAgB,gBAAgB,CAC9B,QAAQ,EAAE,cAAc,EAAE,EAC1B,OAAO,EAAE,kBAAkB,GAC1B,gBAAgB,EAAE,CAEpB"}
|
|
@@ -1,10 +0,0 @@
|
|
|
1
|
-
export function generateCommand(content, adapter) {
|
|
2
|
-
return {
|
|
3
|
-
path: adapter.getFilePath(content.id),
|
|
4
|
-
fileContent: adapter.formatFile(content),
|
|
5
|
-
};
|
|
6
|
-
}
|
|
7
|
-
export function generateCommands(contents, adapter) {
|
|
8
|
-
return contents.map((content) => generateCommand(content, adapter));
|
|
9
|
-
}
|
|
10
|
-
//# sourceMappingURL=generator.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"generator.js","sourceRoot":"","sources":["../../../src/core/command-generation/generator.ts"],"names":[],"mappings":"AAEA,MAAM,UAAU,eAAe,CAC7B,OAAuB,EACvB,OAA2B;IAE3B,OAAO;QACL,IAAI,EAAE,OAAO,CAAC,WAAW,CAAC,OAAO,CAAC,EAAE,CAAC;QACrC,WAAW,EAAE,OAAO,CAAC,UAAU,CAAC,OAAO,CAAC;KACzC,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,gBAAgB,CAC9B,QAA0B,EAC1B,OAA2B;IAE3B,OAAO,QAAQ,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,eAAe,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC,CAAC;AACtE,CAAC"}
|
|
@@ -1,8 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Command generation through a tool adapter. Claude Code is the only shipped
|
|
3
|
-
* one; add a tool by writing an adapter and registering it in COMMAND_ADAPTERS.
|
|
4
|
-
*/
|
|
5
|
-
export type { CommandContent, ToolCommandAdapter, GeneratedCommand, } from './types.js';
|
|
6
|
-
export { generateCommand, generateCommands } from './generator.js';
|
|
7
|
-
export { claudeAdapter, COMMAND_ADAPTERS, findCommandAdapter } from './adapters/index.js';
|
|
8
|
-
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/core/command-generation/index.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,YAAY,EACV,cAAc,EACd,kBAAkB,EAClB,gBAAgB,GACjB,MAAM,YAAY,CAAC;AAEpB,OAAO,EAAE,eAAe,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAC;AAEnE,OAAO,EAAE,aAAa,EAAE,gBAAgB,EAAE,kBAAkB,EAAE,MAAM,qBAAqB,CAAC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/core/command-generation/index.ts"],"names":[],"mappings":"AAUA,OAAO,EAAE,eAAe,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAC;AAEnE,OAAO,EAAE,aAAa,EAAE,gBAAgB,EAAE,kBAAkB,EAAE,MAAM,qBAAqB,CAAC"}
|
|
@@ -1,30 +0,0 @@
|
|
|
1
|
-
/** A command's content, before any tool-specific formatting. */
|
|
2
|
-
export interface CommandContent {
|
|
3
|
-
/** e.g. 'explore', 'apply', 'new'. */
|
|
4
|
-
id: string;
|
|
5
|
-
name: string;
|
|
6
|
-
description: string;
|
|
7
|
-
/** Grouping category, e.g. 'Workflow'. */
|
|
8
|
-
category: string;
|
|
9
|
-
tags: string[];
|
|
10
|
-
/** The command instruction text. */
|
|
11
|
-
body: string;
|
|
12
|
-
}
|
|
13
|
-
/** Per-tool formatting strategy: where the file goes and how it is framed. */
|
|
14
|
-
export interface ToolCommandAdapter {
|
|
15
|
-
/** Matches AIToolOption.value, e.g. 'claude'. */
|
|
16
|
-
toolId: string;
|
|
17
|
-
/**
|
|
18
|
-
* Path from the project root, e.g. '.claude/commands/tosx/explore.md'. May be
|
|
19
|
-
* absolute for a tool with global-scoped prompts.
|
|
20
|
-
*/
|
|
21
|
-
getFilePath(commandId: string): string;
|
|
22
|
-
/** The complete file, frontmatter included. */
|
|
23
|
-
formatFile(content: CommandContent): string;
|
|
24
|
-
}
|
|
25
|
-
export interface GeneratedCommand {
|
|
26
|
-
/** From the project root, or absolute for global-scoped tools. */
|
|
27
|
-
path: string;
|
|
28
|
-
fileContent: string;
|
|
29
|
-
}
|
|
30
|
-
//# sourceMappingURL=types.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/core/command-generation/types.ts"],"names":[],"mappings":"AAAA,gEAAgE;AAChE,MAAM,WAAW,cAAc;IAC7B,sCAAsC;IACtC,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,0CAA0C;IAC1C,QAAQ,EAAE,MAAM,CAAC;IACjB,IAAI,EAAE,MAAM,EAAE,CAAC;IACf,oCAAoC;IACpC,IAAI,EAAE,MAAM,CAAC;CACd;AAED,8EAA8E;AAC9E,MAAM,WAAW,kBAAkB;IACjC,iDAAiD;IACjD,MAAM,EAAE,MAAM,CAAC;IACf;;;OAGG;IACH,WAAW,CAAC,SAAS,EAAE,MAAM,GAAG,MAAM,CAAC;IACvC,+CAA+C;IAC/C,UAAU,CAAC,OAAO,EAAE,cAAc,GAAG,MAAM,CAAC;CAC7C;AAED,MAAM,WAAW,gBAAgB;IAC/B,kEAAkE;IAClE,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;CACrB"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/core/command-generation/types.ts"],"names":[],"mappings":""}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"yaml.d.ts","sourceRoot":"","sources":["../../../src/core/command-generation/yaml.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,wBAAgB,eAAe,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAarD"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"yaml.js","sourceRoot":"","sources":["../../../src/core/command-generation/yaml.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,MAAM,UAAU,eAAe,CAAC,KAAa;IAC3C,MAAM,YAAY,GAAG,kCAAkC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IACpE,IAAI,YAAY,EAAE,CAAC;QACjB,qEAAqE;QACrE,gDAAgD;QAChD,MAAM,OAAO,GAAG,KAAK;aAClB,OAAO,CAAC,KAAK,EAAE,MAAM,CAAC;aACtB,OAAO,CAAC,IAAI,EAAE,KAAK,CAAC;aACpB,OAAO,CAAC,KAAK,EAAE,KAAK,CAAC;aACrB,OAAO,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;QACzB,OAAO,IAAI,OAAO,GAAG,CAAC;IACxB,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC"}
|