@rudinmax87/united-we-stand 0.1.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 (169) hide show
  1. package/.united-we-stand/README.md +523 -0
  2. package/.united-we-stand/agents/0-status-checker.md +65 -0
  3. package/.united-we-stand/agents/1-initializer.md +48 -0
  4. package/.united-we-stand/agents/2-planner.md +44 -0
  5. package/.united-we-stand/agents/3-designer.md +50 -0
  6. package/.united-we-stand/agents/4-implementer.md +56 -0
  7. package/.united-we-stand/agents/5-code-reviewer.md +51 -0
  8. package/.united-we-stand/agents/6-finalizer.md +53 -0
  9. package/.united-we-stand/agents/accessibility-reviewer.md +15 -0
  10. package/.united-we-stand/agents/api-contract-writer.md +15 -0
  11. package/.united-we-stand/agents/data-modeler.md +15 -0
  12. package/.united-we-stand/agents/debugger.md +15 -0
  13. package/.united-we-stand/agents/documentation-writer.md +15 -0
  14. package/.united-we-stand/agents/migration-planner.md +15 -0
  15. package/.united-we-stand/agents/observability-reviewer.md +15 -0
  16. package/.united-we-stand/agents/performance-reviewer.md +15 -0
  17. package/.united-we-stand/agents/project-manager.md +15 -0
  18. package/.united-we-stand/agents/refactorer.md +15 -0
  19. package/.united-we-stand/agents/release-coordinator.md +15 -0
  20. package/.united-we-stand/agents/sql-database-designer.md +24 -0
  21. package/.united-we-stand/agents/test-strategist.md +15 -0
  22. package/.united-we-stand/agents/web-designer.md +19 -0
  23. package/.united-we-stand/agents-md-block.md +153 -0
  24. package/.united-we-stand/antigravity-workflow.md +15 -0
  25. package/.united-we-stand/copilot-instructions.md +15 -0
  26. package/.united-we-stand/cursor-rule.mdc +18 -0
  27. package/.united-we-stand/framework/00-index.md +53 -0
  28. package/.united-we-stand/framework/01-core-rules.md +157 -0
  29. package/.united-we-stand/framework/02-state-model.md +143 -0
  30. package/.united-we-stand/framework/03-stage-lifecycle.md +67 -0
  31. package/.united-we-stand/framework/04-command-routing.md +258 -0
  32. package/.united-we-stand/framework/05-conflict-resolution.md +41 -0
  33. package/.united-we-stand/framework/06-spec-writing-standard.md +156 -0
  34. package/.united-we-stand/framework/07-definition-of-done.md +52 -0
  35. package/.united-we-stand/framework/08-skip-force-policy.md +51 -0
  36. package/.united-we-stand/framework/09-traceability-model.md +37 -0
  37. package/.united-we-stand/framework/10-review-model.md +67 -0
  38. package/.united-we-stand/framework/11-glossary.md +16 -0
  39. package/.united-we-stand/framework/profiles/00-profile-selection.md +21 -0
  40. package/.united-we-stand/framework/profiles/api-service.md +11 -0
  41. package/.united-we-stand/framework/profiles/cli-tool.md +9 -0
  42. package/.united-we-stand/framework/profiles/csharp.md +10 -0
  43. package/.united-we-stand/framework/profiles/data-pipeline.md +9 -0
  44. package/.united-we-stand/framework/profiles/generic.md +37 -0
  45. package/.united-we-stand/framework/profiles/go.md +12 -0
  46. package/.united-we-stand/framework/profiles/java.md +11 -0
  47. package/.united-we-stand/framework/profiles/javascript-typescript.md +51 -0
  48. package/.united-we-stand/framework/profiles/library-package.md +10 -0
  49. package/.united-we-stand/framework/profiles/mobile-app.md +9 -0
  50. package/.united-we-stand/framework/profiles/php.md +10 -0
  51. package/.united-we-stand/framework/profiles/python.md +16 -0
  52. package/.united-we-stand/framework/profiles/ruby.md +10 -0
  53. package/.united-we-stand/framework/profiles/rust.md +11 -0
  54. package/.united-we-stand/framework/profiles/web-app.md +11 -0
  55. package/.united-we-stand/playbooks/00-index.md +19 -0
  56. package/.united-we-stand/playbooks/api-change.md +3 -0
  57. package/.united-we-stand/playbooks/bugfix.md +3 -0
  58. package/.united-we-stand/playbooks/data-model-change.md +3 -0
  59. package/.united-we-stand/playbooks/docs-only-change.md +3 -0
  60. package/.united-we-stand/playbooks/existing-feature-enhancement.md +3 -0
  61. package/.united-we-stand/playbooks/greenfield-feature.md +3 -0
  62. package/.united-we-stand/playbooks/migration.md +3 -0
  63. package/.united-we-stand/playbooks/refactor.md +3 -0
  64. package/.united-we-stand/playbooks/release-preparation.md +3 -0
  65. package/.united-we-stand/playbooks/security-hotfix.md +3 -0
  66. package/.united-we-stand/playbooks/ui-ux-change.md +3 -0
  67. package/.united-we-stand/spec-driven/branch-template/00-current-status.md +46 -0
  68. package/.united-we-stand/spec-driven/branch-template/01-init.md +24 -0
  69. package/.united-we-stand/spec-driven/branch-template/02-plan.md +19 -0
  70. package/.united-we-stand/spec-driven/branch-template/03-design.md +22 -0
  71. package/.united-we-stand/spec-driven/branch-template/04-implementation.md +19 -0
  72. package/.united-we-stand/spec-driven/branch-template/05-code-review.md +16 -0
  73. package/.united-we-stand/spec-driven/branch-template/06-finalization.md +22 -0
  74. package/.united-we-stand/spec-driven/branch-template/07-decisions.md +10 -0
  75. package/.united-we-stand/spec-driven/branch-template/08-traceability.md +7 -0
  76. package/.united-we-stand/spec-driven/branch-template/09-risks-issues.md +10 -0
  77. package/.united-we-stand/spec-driven/branch-template/10-test-strategy.md +16 -0
  78. package/.united-we-stand/spec-driven/branch-template/11-change-log.md +5 -0
  79. package/.united-we-stand/spec-driven/branch-template/12-handoff.md +10 -0
  80. package/.united-we-stand/spec-driven/branch-template/13-retrospective.md +10 -0
  81. package/.united-we-stand/spec-driven/branch-template/api/auth-boundaries.md +3 -0
  82. package/.united-we-stand/spec-driven/branch-template/api/contracts.md +3 -0
  83. package/.united-we-stand/spec-driven/branch-template/api/endpoints.md +3 -0
  84. package/.united-we-stand/spec-driven/branch-template/data/data-boundaries.md +3 -0
  85. package/.united-we-stand/spec-driven/branch-template/data/migrations.md +3 -0
  86. package/.united-we-stand/spec-driven/branch-template/data/schema-notes.md +3 -0
  87. package/.united-we-stand/spec-driven/branch-template/modules/example-module.md +12 -0
  88. package/.united-we-stand/spec-driven/branch-template/ux/copy-notes.md +3 -0
  89. package/.united-we-stand/spec-driven/branch-template/ux/screen-states.md +3 -0
  90. package/.united-we-stand/spec-driven/branch-template/ux/user-flows.md +3 -0
  91. package/.united-we-stand/steering/00-index.md +15 -0
  92. package/.united-we-stand/steering/architecture-steering.md +13 -0
  93. package/.united-we-stand/steering/coding-steering.md +77 -0
  94. package/.united-we-stand/steering/data-steering.md +31 -0
  95. package/.united-we-stand/steering/documentation-steering.md +11 -0
  96. package/.united-we-stand/steering/observability-steering.md +11 -0
  97. package/.united-we-stand/steering/product-steering.md +16 -0
  98. package/.united-we-stand/steering/repo-conventions.md +12 -0
  99. package/.united-we-stand/steering/security-steering.md +12 -0
  100. package/.united-we-stand/steering/testing-steering.md +11 -0
  101. package/.united-we-stand/steering/ux-steering.md +26 -0
  102. package/LICENSE +21 -0
  103. package/README.md +595 -0
  104. package/dist/cli.d.ts +7 -0
  105. package/dist/cli.d.ts.map +1 -0
  106. package/dist/cli.js +96 -0
  107. package/dist/cli.js.map +1 -0
  108. package/dist/commands/branch-init.d.ts +16 -0
  109. package/dist/commands/branch-init.d.ts.map +1 -0
  110. package/dist/commands/branch-init.js +337 -0
  111. package/dist/commands/branch-init.js.map +1 -0
  112. package/dist/commands/doctor.d.ts +17 -0
  113. package/dist/commands/doctor.d.ts.map +1 -0
  114. package/dist/commands/doctor.js +527 -0
  115. package/dist/commands/doctor.js.map +1 -0
  116. package/dist/commands/install.d.ts +18 -0
  117. package/dist/commands/install.d.ts.map +1 -0
  118. package/dist/commands/install.js +127 -0
  119. package/dist/commands/install.js.map +1 -0
  120. package/dist/commands/refresh.d.ts +17 -0
  121. package/dist/commands/refresh.d.ts.map +1 -0
  122. package/dist/commands/refresh.js +69 -0
  123. package/dist/commands/refresh.js.map +1 -0
  124. package/dist/index.d.ts +8 -0
  125. package/dist/index.d.ts.map +1 -0
  126. package/dist/index.js +8 -0
  127. package/dist/index.js.map +1 -0
  128. package/dist/lib/branch-routing.d.ts +14 -0
  129. package/dist/lib/branch-routing.d.ts.map +1 -0
  130. package/dist/lib/branch-routing.js +62 -0
  131. package/dist/lib/branch-routing.js.map +1 -0
  132. package/dist/lib/branch.d.ts +12 -0
  133. package/dist/lib/branch.d.ts.map +1 -0
  134. package/dist/lib/branch.js +19 -0
  135. package/dist/lib/branch.js.map +1 -0
  136. package/dist/lib/fs.d.ts +37 -0
  137. package/dist/lib/fs.d.ts.map +1 -0
  138. package/dist/lib/fs.js +123 -0
  139. package/dist/lib/fs.js.map +1 -0
  140. package/dist/lib/git.d.ts +20 -0
  141. package/dist/lib/git.d.ts.map +1 -0
  142. package/dist/lib/git.js +87 -0
  143. package/dist/lib/git.js.map +1 -0
  144. package/dist/lib/github.d.ts +13 -0
  145. package/dist/lib/github.d.ts.map +1 -0
  146. package/dist/lib/github.js +105 -0
  147. package/dist/lib/github.js.map +1 -0
  148. package/dist/lib/logger.d.ts +26 -0
  149. package/dist/lib/logger.d.ts.map +1 -0
  150. package/dist/lib/logger.js +37 -0
  151. package/dist/lib/logger.js.map +1 -0
  152. package/dist/lib/markers.d.ts +25 -0
  153. package/dist/lib/markers.d.ts.map +1 -0
  154. package/dist/lib/markers.js +60 -0
  155. package/dist/lib/markers.js.map +1 -0
  156. package/dist/lib/package-version.d.ts +6 -0
  157. package/dist/lib/package-version.d.ts.map +1 -0
  158. package/dist/lib/package-version.js +18 -0
  159. package/dist/lib/package-version.js.map +1 -0
  160. package/dist/lib/runtime-state.d.ts +35 -0
  161. package/dist/lib/runtime-state.d.ts.map +1 -0
  162. package/dist/lib/runtime-state.js +131 -0
  163. package/dist/lib/runtime-state.js.map +1 -0
  164. package/dist/lib/templates.d.ts +88 -0
  165. package/dist/lib/templates.d.ts.map +1 -0
  166. package/dist/lib/templates.js +213 -0
  167. package/dist/lib/templates.js.map +1 -0
  168. package/package.json +57 -0
  169. package/public/united-we-stand-logo.png +0 -0
@@ -0,0 +1,88 @@
1
+ /**
2
+ * Centralized template loader for united-we-stand.
3
+ * Currently unused.
4
+ *
5
+ * Markdown template assets live under the package-root `.united-we-stand/`
6
+ * directory. This module reads those assets and returns grouped file manifests
7
+ * for installation and branch initialization.
8
+ */
9
+ /** Represents a single markdown file with path (relative to `.united-we-stand/`) and content. */
10
+ export interface TemplateFileEntry {
11
+ relativePath: string;
12
+ content: string;
13
+ }
14
+ /** Represents a single agent markdown file with its filename and content. */
15
+ export interface AgentFileEntry {
16
+ filename: string;
17
+ content: string;
18
+ }
19
+ /** Represents a branch-spec markdown file with path relative to a branch folder and content. */
20
+ export interface BranchSpecFileEntry {
21
+ relativePath: string;
22
+ content: string;
23
+ }
24
+ /**
25
+ * Returns the AGENTS.md managed block content.
26
+ */
27
+ export declare function loadAgentsMdBlockTemplate(): string;
28
+ /**
29
+ * Returns the copilot-instructions.md managed block content.
30
+ */
31
+ export declare function loadCopilotInstructionsTemplate(): string;
32
+ /**
33
+ * Returns the Antigravity workflow pointer template.
34
+ */
35
+ export declare function loadAntigravityWorkflowTemplate(): string;
36
+ /**
37
+ * Returns the Cursor project rule pointer template.
38
+ */
39
+ export declare function loadCursorRuleTemplate(): string;
40
+ /**
41
+ * Returns the `.united-we-stand/README.md` template.
42
+ */
43
+ export declare function loadFrameworkReadmeTemplate(): string;
44
+ /**
45
+ * Loads framework docs under `.united-we-stand/framework/`.
46
+ */
47
+ export declare function loadFrameworkFiles(): TemplateFileEntry[];
48
+ /**
49
+ * Loads steering docs under `.united-we-stand/steering/`.
50
+ */
51
+ export declare function loadSteeringFiles(): TemplateFileEntry[];
52
+ /**
53
+ * Loads playbook docs under `.united-we-stand/playbooks/`.
54
+ */
55
+ export declare function loadPlaybookFiles(): TemplateFileEntry[];
56
+ /**
57
+ * Loads all framework agent markdown files.
58
+ */
59
+ export declare function loadFrameworkAgentFiles(): AgentFileEntry[];
60
+ /**
61
+ * Loads all standalone role agent markdown files.
62
+ */
63
+ export declare function loadStandaloneAgentFiles(): AgentFileEntry[];
64
+ /**
65
+ * Lists all branch-spec markdown template paths relative to branch root.
66
+ */
67
+ export declare function listBranchSpecRelativePaths(): string[];
68
+ /**
69
+ * Loads all branch spec markdown templates from `spec-driven/branch-template/`.
70
+ */
71
+ export declare function loadBranchSpecFiles(branchName: string, sanitizedName: string): BranchSpecFileEntry[];
72
+ /**
73
+ * Reads the raw `01-init.md` template used as fallback content.
74
+ */
75
+ export declare function loadInitSpecTemplate(): string;
76
+ /**
77
+ * Reads the raw `00-current-status.md` template and fills branch placeholders.
78
+ */
79
+ export declare function loadCurrentStatusSpecTemplate(branchName: string, sanitizedName: string): string;
80
+ /**
81
+ * Builds the replaceable marker content for a captured idea in `01-init.md`.
82
+ */
83
+ export declare function buildCapturedIdeaBlock(ideaText: string): string;
84
+ /**
85
+ * Builds the managed branch overview block for `00-current-status.md`.
86
+ */
87
+ export declare function buildOverviewStageBlock(branchName: string, sanitizedName: string, currentStage: string, completedSteps: string, incompletedStages: string, nextRecommendedStep: string, statusNote: string, blockersOrWarnings?: string): string;
88
+ //# sourceMappingURL=templates.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"templates.d.ts","sourceRoot":"","sources":["../../src/lib/templates.tsx"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAoCH,iGAAiG;AACjG,MAAM,WAAW,iBAAiB;IAC9B,YAAY,EAAE,MAAM,CAAC;IACrB,OAAO,EAAE,MAAM,CAAC;CACnB;AAED,6EAA6E;AAC7E,MAAM,WAAW,cAAc;IAC3B,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,MAAM,CAAC;CACnB;AAED,gGAAgG;AAChG,MAAM,WAAW,mBAAmB;IAChC,YAAY,EAAE,MAAM,CAAC;IACrB,OAAO,EAAE,MAAM,CAAC;CACnB;AAoED;;GAEG;AACH,wBAAgB,yBAAyB,IAAI,MAAM,CAElD;AAED;;GAEG;AACH,wBAAgB,+BAA+B,IAAI,MAAM,CAExD;AAED;;GAEG;AACH,wBAAgB,+BAA+B,IAAI,MAAM,CAExD;AAED;;GAEG;AACH,wBAAgB,sBAAsB,IAAI,MAAM,CAE/C;AAED;;GAEG;AACH,wBAAgB,2BAA2B,IAAI,MAAM,CAEpD;AAED;;GAEG;AACH,wBAAgB,kBAAkB,IAAI,iBAAiB,EAAE,CAExD;AAED;;GAEG;AACH,wBAAgB,iBAAiB,IAAI,iBAAiB,EAAE,CAEvD;AAED;;GAEG;AACH,wBAAgB,iBAAiB,IAAI,iBAAiB,EAAE,CAEvD;AAED;;GAEG;AACH,wBAAgB,uBAAuB,IAAI,cAAc,EAAE,CAK1D;AAED;;GAEG;AACH,wBAAgB,wBAAwB,IAAI,cAAc,EAAE,CAK3D;AAED;;GAEG;AACH,wBAAgB,2BAA2B,IAAI,MAAM,EAAE,CAItD;AAED;;GAEG;AACH,wBAAgB,mBAAmB,CAAC,UAAU,EAAE,MAAM,EAAE,aAAa,EAAE,MAAM,GAAG,mBAAmB,EAAE,CAOpG;AAED;;GAEG;AACH,wBAAgB,oBAAoB,IAAI,MAAM,CAE7C;AAED;;GAEG;AACH,wBAAgB,6BAA6B,CAAC,UAAU,EAAE,MAAM,EAAE,aAAa,EAAE,MAAM,GAAG,MAAM,CAK/F;AAED;;GAEG;AACH,wBAAgB,sBAAsB,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,CAE/D;AAED;;GAEG;AACH,wBAAgB,uBAAuB,CACnC,UAAU,EAAE,MAAM,EAClB,aAAa,EAAE,MAAM,EACrB,YAAY,EAAE,MAAM,EACpB,cAAc,EAAE,MAAM,EACtB,iBAAiB,EAAE,MAAM,EACzB,mBAAmB,EAAE,MAAM,EAC3B,UAAU,EAAE,MAAM,EAClB,kBAAkB,GAAE,MAAe,GACpC,MAAM,CAkBR"}
@@ -0,0 +1,213 @@
1
+ /**
2
+ * Centralized template loader for united-we-stand.
3
+ * Currently unused.
4
+ *
5
+ * Markdown template assets live under the package-root `.united-we-stand/`
6
+ * directory. This module reads those assets and returns grouped file manifests
7
+ * for installation and branch initialization.
8
+ */
9
+ import { readFileSync, readdirSync } from 'node:fs';
10
+ import { join, dirname, relative } from 'node:path';
11
+ import { fileURLToPath } from 'node:url';
12
+ const CURRENT_FILENAME = fileURLToPath(import.meta.url);
13
+ const CURRENT_DIRNAME = dirname(CURRENT_FILENAME);
14
+ const FRAMEWORK_AGENT_FILENAMES = [
15
+ '0-status-checker.md',
16
+ '1-initializer.md',
17
+ '2-planner.md',
18
+ '3-designer.md',
19
+ '4-implementer.md',
20
+ '5-code-reviewer.md',
21
+ '6-finalizer.md',
22
+ ];
23
+ const STANDALONE_AGENT_FILENAMES = [
24
+ 'debugger.md',
25
+ 'documentation-writer.md',
26
+ 'project-manager.md',
27
+ 'refactorer.md',
28
+ 'test-strategist.md',
29
+ 'performance-reviewer.md',
30
+ 'accessibility-reviewer.md',
31
+ 'api-contract-writer.md',
32
+ 'data-modeler.md',
33
+ 'sql-database-designer.md',
34
+ 'migration-planner.md',
35
+ 'observability-reviewer.md',
36
+ 'release-coordinator.md',
37
+ 'web-designer.md',
38
+ ];
39
+ /**
40
+ * Returns the absolute path to the package-root `.united-we-stand/` directory.
41
+ * Works from both `src/lib/` (dev) and `dist/lib/` (built).
42
+ */
43
+ function resolveTemplateRootDirectory() {
44
+ return join(CURRENT_DIRNAME, '..', '..', '.united-we-stand');
45
+ }
46
+ /**
47
+ * Reads a template file from `.united-we-stand/` as UTF-8 text.
48
+ */
49
+ function readTemplateFile(relativePath) {
50
+ return readFileSync(join(resolveTemplateRootDirectory(), relativePath), 'utf-8');
51
+ }
52
+ /**
53
+ * Reads a template file and replaces all `{{KEY}}` placeholders with
54
+ * values from the provided map.
55
+ */
56
+ function readTemplateWithPlaceholders(relativePath, variables) {
57
+ let templateContent = readTemplateFile(relativePath);
58
+ for (const [placeholderKey, replacementValue] of Object.entries(variables)) {
59
+ templateContent = templateContent.replaceAll(`{{${placeholderKey}}}`, replacementValue);
60
+ }
61
+ return templateContent;
62
+ }
63
+ /**
64
+ * Recursively lists markdown files under a directory relative to `.united-we-stand/`.
65
+ */
66
+ function listMarkdownFiles(relativeDirectory) {
67
+ const absoluteDirectoryPath = join(resolveTemplateRootDirectory(), relativeDirectory);
68
+ const filePaths = [];
69
+ const directoryEntries = readdirSync(absoluteDirectoryPath, { withFileTypes: true })
70
+ .sort((left, right) => left.name.localeCompare(right.name));
71
+ for (const entry of directoryEntries) {
72
+ const absoluteEntryPath = join(absoluteDirectoryPath, entry.name);
73
+ if (entry.isDirectory()) {
74
+ filePaths.push(...listMarkdownFiles(relative(resolveTemplateRootDirectory(), absoluteEntryPath)));
75
+ continue;
76
+ }
77
+ if (entry.isFile() && entry.name.endsWith('.md')) {
78
+ filePaths.push(relative(resolveTemplateRootDirectory(), absoluteEntryPath));
79
+ }
80
+ }
81
+ return filePaths.sort((left, right) => left.localeCompare(right));
82
+ }
83
+ /**
84
+ * Loads all markdown files under a directory relative to `.united-we-stand/`.
85
+ */
86
+ function loadDirectoryFiles(relativeDirectory) {
87
+ return listMarkdownFiles(relativeDirectory).map((relativePath) => ({
88
+ relativePath,
89
+ content: readTemplateFile(relativePath),
90
+ }));
91
+ }
92
+ /**
93
+ * Returns the AGENTS.md managed block content.
94
+ */
95
+ export function loadAgentsMdBlockTemplate() {
96
+ return readTemplateFile('agents-md-block.md');
97
+ }
98
+ /**
99
+ * Returns the copilot-instructions.md managed block content.
100
+ */
101
+ export function loadCopilotInstructionsTemplate() {
102
+ return readTemplateFile('copilot-instructions.md');
103
+ }
104
+ /**
105
+ * Returns the Antigravity workflow pointer template.
106
+ */
107
+ export function loadAntigravityWorkflowTemplate() {
108
+ return readTemplateFile('antigravity-workflow.md');
109
+ }
110
+ /**
111
+ * Returns the Cursor project rule pointer template.
112
+ */
113
+ export function loadCursorRuleTemplate() {
114
+ return readTemplateFile('cursor-rule.mdc');
115
+ }
116
+ /**
117
+ * Returns the `.united-we-stand/README.md` template.
118
+ */
119
+ export function loadFrameworkReadmeTemplate() {
120
+ return readTemplateFile('README.md');
121
+ }
122
+ /**
123
+ * Loads framework docs under `.united-we-stand/framework/`.
124
+ */
125
+ export function loadFrameworkFiles() {
126
+ return loadDirectoryFiles('framework');
127
+ }
128
+ /**
129
+ * Loads steering docs under `.united-we-stand/steering/`.
130
+ */
131
+ export function loadSteeringFiles() {
132
+ return loadDirectoryFiles('steering');
133
+ }
134
+ /**
135
+ * Loads playbook docs under `.united-we-stand/playbooks/`.
136
+ */
137
+ export function loadPlaybookFiles() {
138
+ return loadDirectoryFiles('playbooks');
139
+ }
140
+ /**
141
+ * Loads all framework agent markdown files.
142
+ */
143
+ export function loadFrameworkAgentFiles() {
144
+ return FRAMEWORK_AGENT_FILENAMES.map((filename) => ({
145
+ filename,
146
+ content: readTemplateFile(join('agents', filename)),
147
+ }));
148
+ }
149
+ /**
150
+ * Loads all standalone role agent markdown files.
151
+ */
152
+ export function loadStandaloneAgentFiles() {
153
+ return STANDALONE_AGENT_FILENAMES.map((filename) => ({
154
+ filename,
155
+ content: readTemplateFile(join('agents', filename)),
156
+ }));
157
+ }
158
+ /**
159
+ * Lists all branch-spec markdown template paths relative to branch root.
160
+ */
161
+ export function listBranchSpecRelativePaths() {
162
+ return listMarkdownFiles(join('spec-driven', 'branch-template')).map((relativePath) => (relativePath.replace(/^spec-driven[\\/]+branch-template[\\/]/, '')));
163
+ }
164
+ /**
165
+ * Loads all branch spec markdown templates from `spec-driven/branch-template/`.
166
+ */
167
+ export function loadBranchSpecFiles(branchName, sanitizedName) {
168
+ const placeholderVars = { BRANCH: branchName, SANITIZED: sanitizedName };
169
+ return listBranchSpecRelativePaths().map((relativePath) => ({
170
+ relativePath,
171
+ content: readTemplateWithPlaceholders(join('spec-driven', 'branch-template', relativePath), placeholderVars),
172
+ }));
173
+ }
174
+ /**
175
+ * Reads the raw `01-init.md` template used as fallback content.
176
+ */
177
+ export function loadInitSpecTemplate() {
178
+ return readTemplateFile(join('spec-driven', 'branch-template', '01-init.md'));
179
+ }
180
+ /**
181
+ * Reads the raw `00-current-status.md` template and fills branch placeholders.
182
+ */
183
+ export function loadCurrentStatusSpecTemplate(branchName, sanitizedName) {
184
+ return readTemplateWithPlaceholders(join('spec-driven', 'branch-template', '00-current-status.md'), { BRANCH: branchName, SANITIZED: sanitizedName });
185
+ }
186
+ /**
187
+ * Builds the replaceable marker content for a captured idea in `01-init.md`.
188
+ */
189
+ export function buildCapturedIdeaBlock(ideaText) {
190
+ return `${ideaText}\n`;
191
+ }
192
+ /**
193
+ * Builds the managed branch overview block for `00-current-status.md`.
194
+ */
195
+ export function buildOverviewStageBlock(branchName, sanitizedName, currentStage, completedSteps, incompletedStages, nextRecommendedStep, statusNote, blockersOrWarnings = 'none') {
196
+ const todayDate = new Date().toISOString().slice(0, 10);
197
+ return `# Branch Overview
198
+
199
+ | Field | Value |
200
+ |-------|-------|
201
+ | Current branch | \`${branchName}\` |
202
+ | Sanitized ID | \`${sanitizedName}\` |
203
+ | Current stage | ${currentStage} |
204
+ | Completed steps | ${completedSteps} |
205
+ | Incompleted stages | ${incompletedStages} |
206
+ | Next recommended step | ${nextRecommendedStep} |
207
+ | Status note | ${statusNote} |
208
+ | Blockers / warnings | ${blockersOrWarnings} |
209
+ | Last updated by | 1-initializer |
210
+ | Last updated at | ${todayDate} |
211
+ `;
212
+ }
213
+ //# sourceMappingURL=templates.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"templates.js","sourceRoot":"","sources":["../../src/lib/templates.tsx"],"names":[],"mappings":"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"}
package/package.json ADDED
@@ -0,0 +1,57 @@
1
+ {
2
+ "name": "@rudinmax87/united-we-stand",
3
+ "version": "0.1.0",
4
+ "description": "Repo-scoped AI workflow context framework — persists branch-aware specs and agent roles as markdown files.",
5
+ "type": "module",
6
+ "bin": {
7
+ "united-we-stand": "./dist/cli.js"
8
+ },
9
+ "main": "./dist/index.js",
10
+ "files": [
11
+ "dist",
12
+ ".united-we-stand",
13
+ "public",
14
+ "README.md",
15
+ "LICENSE"
16
+ ],
17
+ "scripts": {
18
+ "build": "tsc",
19
+ "clean": "node -e \"require('fs').rmSync('dist',{recursive:true,force:true})\"",
20
+ "prepare:publish:github": "npm run build && node ./scripts/prepare-github-publish.mjs",
21
+ "test": "vitest run",
22
+ "test:e2e": "node ./tests/e2e-cli.mjs",
23
+ "test:watch": "vitest",
24
+ "prepublishOnly": "npm run clean && npm run build && npm test"
25
+ },
26
+ "keywords": [
27
+ "cli",
28
+ "ai",
29
+ "agents",
30
+ "workflow",
31
+ "markdown",
32
+ "git",
33
+ "copilot",
34
+ "spec-driven"
35
+ ],
36
+ "author": "",
37
+ "license": "MIT",
38
+ "dependencies": {
39
+ "chalk": "^5.4.1",
40
+ "commander": "^13.1.0"
41
+ },
42
+ "devDependencies": {
43
+ "@types/node": "^22.13.0",
44
+ "typescript": "^5.7.0",
45
+ "vitest": "^3.0.0"
46
+ },
47
+ "engines": {
48
+ "node": ">=18.0.0"
49
+ },
50
+ "publishConfig": {
51
+ "access": "public"
52
+ },
53
+ "repository": {
54
+ "type": "git",
55
+ "url": "https://github.com/mrudinal/united-we-stand-framework.git"
56
+ }
57
+ }
Binary file