scene-capability-engine 3.3.5 → 3.3.10
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 +130 -78
- package/README.md +6 -6
- package/README.zh.md +6 -6
- package/bin/scene-capability-engine.js +129 -7
- package/docs/331-poc-adaptation-roadmap.md +3 -3
- package/docs/331-poc-dual-track-integration-guide.md +8 -8
- package/docs/331-poc-weekly-delivery-checklist.md +6 -6
- package/docs/README.md +4 -0
- package/docs/adopt-migration-guide.md +13 -13
- package/docs/adoption-guide.md +28 -28
- package/docs/agent-hooks-analysis.md +10 -10
- package/docs/architecture.md +13 -13
- package/docs/articles/ai-driven-development-philosophy-and-practice.en.md +3 -3
- package/docs/articles/ai-driven-development-philosophy-and-practice.md +3 -3
- package/docs/autonomous-control-guide.md +35 -35
- package/docs/command-reference.md +192 -153
- package/docs/cross-tool-guide.md +7 -7
- package/docs/developer-guide.md +8 -8
- package/docs/document-governance.md +15 -15
- package/docs/environment-management-guide.md +6 -6
- package/docs/examples/add-export-command/design.md +1 -1
- package/docs/faq.md +13 -13
- package/docs/handoff-profile-integration-guide.md +3 -3
- package/docs/handoffs/evidence/ontology/moqui-template-baseline-2026-02-17-232922.json +7 -7
- package/docs/handoffs/evidence/ontology/moqui-template-baseline-2026-02-17-232922.md +1 -1
- package/docs/integration-modes.md +12 -12
- package/docs/integration-philosophy.md +11 -11
- package/docs/interactive-customization/331-poc-sce-integration-checklist.md +24 -24
- package/docs/interactive-customization/README.md +43 -43
- package/docs/interactive-customization/business-mode-policy-baseline.json +33 -0
- package/docs/interactive-customization/dual-ui-mode-integration-guide.md +1 -1
- package/docs/interactive-customization/moqui-adapter-interface.md +2 -2
- package/docs/interactive-customization/moqui-copilot-integration-guide.md +1 -1
- package/docs/interactive-customization/moqui-interactive-template-playbook.md +4 -4
- package/docs/interactive-customization/phase-acceptance-evidence.md +2 -2
- package/docs/knowledge-management-guide.md +6 -6
- package/docs/manual-workflows-guide.md +4 -4
- package/docs/moqui-capability-matrix.md +3 -3
- package/docs/moqui-standard-rebuild-guide.md +8 -8
- package/docs/moqui-template-core-library-playbook.md +27 -27
- package/docs/multi-agent-coordination-guide.md +19 -19
- package/docs/multi-repo-management-guide.md +17 -17
- package/docs/quick-start-with-ai-tools.md +7 -7
- package/docs/quick-start.md +2 -2
- package/docs/release-checklist.md +4 -4
- package/docs/sce-business-mode-map.md +103 -0
- package/docs/security-governance-default-baseline.md +12 -12
- package/docs/spec-collaboration-guide.md +3 -3
- package/docs/spec-locking-guide.md +2 -2
- package/docs/spec-workflow.md +3 -3
- package/docs/starter-kit/README.md +4 -4
- package/docs/starter-kit/handoff-manifest.starter.json +2 -2
- package/docs/starter-kit/release.workflow.sample.yml +1 -1
- package/docs/steering-strategy-guide.md +15 -15
- package/docs/team-collaboration-guide.md +69 -69
- package/docs/testing-strategy.md +2 -2
- package/docs/tools/claude-guide.md +14 -4
- package/docs/tools/cursor-guide.md +14 -14
- package/docs/tools/generic-guide.md +9 -9
- package/docs/tools/kiro-guide.md +4 -4
- package/docs/tools/vscode-guide.md +13 -13
- package/docs/tools/windsurf-guide.md +6 -6
- package/docs/troubleshooting.md +22 -22
- package/docs/upgrade-guide.md +8 -8
- package/docs/value-observability-guide.md +3 -3
- package/docs/zh/README.md +6 -0
- package/docs/zh/quick-start.md +15 -15
- package/docs/zh/release-checklist.md +3 -3
- package/docs/zh/tools/claude-guide.md +16 -6
- package/docs/zh/tools/cursor-guide.md +11 -11
- package/docs/zh/tools/generic-guide.md +13 -13
- package/docs/zh/tools/kiro-guide.md +2 -2
- package/docs/zh/tools/vscode-guide.md +11 -11
- package/docs/zh/tools/windsurf-guide.md +11 -11
- package/docs/zh/value-observability-guide.md +3 -3
- package/lib/adoption/adoption-logger.js +1 -1
- package/lib/adoption/adoption-strategy.js +28 -28
- package/lib/adoption/backup-manager.js +3 -3
- package/lib/adoption/conflict-resolver.js +2 -2
- package/lib/adoption/detection-engine.js +8 -8
- package/lib/adoption/error-formatter.js +4 -4
- package/lib/adoption/file-classifier.js +6 -6
- package/lib/adoption/progress-reporter.js +1 -1
- package/lib/adoption/smart-orchestrator.js +10 -10
- package/lib/adoption/strategy-selector.js +6 -6
- package/lib/adoption/summary-generator.js +1 -1
- package/lib/adoption/template-sync.js +8 -8
- package/lib/auto/autonomous-engine.js +7 -7
- package/lib/auto/checkpoint-manager.js +1 -1
- package/lib/auto/close-loop-runner.js +12 -12
- package/lib/auto/error-recovery-manager.js +1 -1
- package/lib/auto/goal-decomposer.js +1 -1
- package/lib/auto/moqui-recovery-sequence.js +2 -2
- package/lib/auto/progress-tracker.js +1 -1
- package/lib/auto/state-manager.js +1 -1
- package/lib/backup/backup-system.js +10 -10
- package/lib/backup/selective-backup.js +4 -4
- package/lib/collab/agent-registry.js +2 -2
- package/lib/collab/contract-manager.js +1 -1
- package/lib/collab/coordinator.js +2 -2
- package/lib/collab/dependency-manager.js +1 -1
- package/lib/collab/integration-manager.js +1 -1
- package/lib/collab/metadata-manager.js +1 -1
- package/lib/collab/multi-agent-config.js +2 -2
- package/lib/collab/spec-lifecycle-manager.js +2 -2
- package/lib/collab/visualizer.js +1 -1
- package/lib/commands/adopt.js +6 -6
- package/lib/commands/auto.js +56 -56
- package/lib/commands/collab.js +2 -2
- package/lib/commands/docs.js +3 -3
- package/lib/commands/doctor.js +1 -1
- package/lib/commands/knowledge.js +2 -2
- package/lib/commands/lock.js +1 -1
- package/lib/commands/ops.js +1 -1
- package/lib/commands/orchestrate.js +3 -3
- package/lib/commands/rollback.js +1 -1
- package/lib/commands/scene.js +135 -93
- package/lib/commands/session.js +139 -0
- package/lib/commands/spec-bootstrap.js +1 -1
- package/lib/commands/spec-gate.js +2 -2
- package/lib/commands/spec-pipeline.js +1 -1
- package/lib/commands/status.js +4 -4
- package/lib/commands/steering.js +119 -0
- package/lib/commands/value.js +1 -1
- package/lib/commands/watch.js +9 -9
- package/lib/commands/workspace-multi.js +1 -1
- package/lib/context/context-exporter.js +5 -7
- package/lib/context/prompt-generator.js +2 -2
- package/lib/environment/backup-system.js +1 -1
- package/lib/environment/environment-manager.js +2 -2
- package/lib/gitignore/gitignore-backup.js +3 -3
- package/lib/gitignore/gitignore-detector.js +13 -13
- package/lib/gitignore/gitignore-integration.js +3 -3
- package/lib/gitignore/gitignore-transformer.js +4 -4
- package/lib/gitignore/layered-rules-template.js +16 -16
- package/lib/governance/config-manager.js +1 -1
- package/lib/governance/doc-reference-checker.js +4 -4
- package/lib/governance/execution-logger.js +1 -1
- package/lib/governance/file-scanner.js +3 -3
- package/lib/interactive-customization/moqui-interactive-adapter.js +2 -2
- package/lib/knowledge/knowledge-manager.js +1 -1
- package/lib/lock/lock-manager.js +2 -2
- package/lib/lock/steering-file-lock.js +5 -5
- package/lib/lock/task-lock-manager.js +3 -3
- package/lib/operations/audit-logger.js +1 -1
- package/lib/operations/feedback-manager.js +1 -1
- package/lib/operations/operations-manager.js +3 -3
- package/lib/operations/permission-manager.js +2 -2
- package/lib/operations/template-loader.js +1 -1
- package/lib/orchestrator/agent-spawner.js +27 -2
- package/lib/orchestrator/bootstrap-prompt-builder.js +6 -6
- package/lib/orchestrator/orchestration-engine.js +1 -1
- package/lib/orchestrator/orchestrator-config.js +2 -2
- package/lib/repo/config-manager.js +3 -3
- package/lib/repo/handlers/init-handler.js +1 -1
- package/lib/repo/repo-manager.js +2 -2
- package/lib/runtime/business-mode-resolver.js +240 -0
- package/lib/runtime/session-store.js +207 -0
- package/lib/runtime/steering-contract.js +338 -0
- package/lib/scene-runtime/audit-emitter.js +1 -1
- package/lib/scene-runtime/binding-plugin-loader.js +3 -3
- package/lib/scene-runtime/eval-bridge.js +1 -1
- package/lib/scene-runtime/index.js +1 -1
- package/lib/scene-runtime/moqui-extractor.js +1 -1
- package/lib/scene-runtime/plan-compiler.js +1 -1
- package/lib/scene-runtime/policy-gate.js +1 -1
- package/lib/scene-runtime/runtime-executor.js +1 -1
- package/lib/scene-runtime/scene-loader.js +1 -1
- package/lib/spec/bootstrap/context-collector.js +1 -1
- package/lib/spec/pipeline/stage-adapters.js +3 -3
- package/lib/spec/pipeline/state-store.js +1 -1
- package/lib/spec-gate/policy/policy-loader.js +1 -1
- package/lib/spec-gate/rules/default-rules.js +6 -6
- package/lib/steering/adoption-config.js +1 -1
- package/lib/steering/compliance-error-reporter.js +3 -3
- package/lib/steering/context-sync-manager.js +2 -2
- package/lib/steering/index.js +1 -1
- package/lib/steering/spec-steering.js +2 -2
- package/lib/steering/steering-compliance-checker.js +1 -1
- package/lib/steering/steering-loader.js +4 -5
- package/lib/steering/steering-manager.js +4 -4
- package/lib/task/task-claimer.js +5 -5
- package/lib/task/task-status-store.js +2 -2
- package/lib/templates/content-generalizer.js +1 -1
- package/lib/templates/spec-reader.js +2 -2
- package/lib/templates/template-creator.js +1 -1
- package/lib/templates/template-exporter.js +3 -3
- package/lib/templates/template-manager.js +1 -1
- package/lib/upgrade/migration-engine.js +3 -3
- package/lib/upgrade/migrations/1.0.0-to-1.1.0.js +1 -1
- package/lib/utils/file-diff.js +6 -6
- package/lib/utils/tool-detector.js +10 -10
- package/lib/utils/validation.js +5 -5
- package/lib/value/metric-contract-loader.js +1 -1
- package/lib/version/version-manager.js +1 -1
- package/lib/watch/execution-logger.js +1 -1
- package/lib/watch/presets.js +8 -8
- package/lib/watch/watch-manager.js +2 -2
- package/lib/workspace/legacy-kiro-migrator.js +275 -0
- package/lib/workspace/multi/workspace-context-resolver.js +2 -2
- package/lib/workspace/multi/workspace-registry.js +2 -2
- package/lib/workspace/multi/workspace-state-manager.js +3 -3
- package/lib/workspace/workspace-manager.js +1 -1
- package/lib/workspace/workspace-sync.js +2 -2
- package/locales/en.json +4 -4
- package/locales/zh.json +4 -4
- package/package.json +9 -9
- package/template/{.kiro → .sce}/README.md +15 -15
- package/template/{.kiro → .sce}/hooks/check-spec-on-create.kiro.hook +2 -2
- package/template/{.kiro → .sce}/steering/CORE_PRINCIPLES.md +4 -4
- package/template/{.kiro → .sce}/steering/CURRENT_CONTEXT.md +1 -1
- package/template/{.kiro → .sce}/steering/ENVIRONMENT.md +3 -3
- package/template/{.kiro → .sce}/tools/backup_manager.py +3 -3
- package/template/{.kiro → .sce}/tools/configuration_manager.py +1 -1
- package/template/README.md +12 -12
- /package/template/{.kiro → .sce}/hooks/run-tests-on-save.kiro.hook +0 -0
- /package/template/{.kiro → .sce}/hooks/sync-tasks-on-edit.kiro.hook +0 -0
- /package/template/{.kiro → .sce}/specs/SPEC_WORKFLOW_GUIDE.md +0 -0
- /package/template/{.kiro → .sce}/steering/RULES_GUIDE.md +0 -0
- /package/template/{.kiro → .sce}/templates/operations/default/change-impact.md +0 -0
- /package/template/{.kiro → .sce}/templates/operations/default/deployment.md +0 -0
- /package/template/{.kiro → .sce}/templates/operations/default/feedback-response.md +0 -0
- /package/template/{.kiro → .sce}/templates/operations/default/migration-plan.md +0 -0
- /package/template/{.kiro → .sce}/templates/operations/default/monitoring.md +0 -0
- /package/template/{.kiro → .sce}/templates/operations/default/operations.md +0 -0
- /package/template/{.kiro → .sce}/templates/operations/default/rollback.md +0 -0
- /package/template/{.kiro → .sce}/templates/operations/default/tools.yaml +0 -0
- /package/template/{.kiro → .sce}/templates/operations/default/troubleshooting.md +0 -0
- /package/template/{.kiro → .sce}/tools/document_evaluator.py +0 -0
- /package/template/{.kiro → .sce}/tools/enhancement_logger.py +0 -0
- /package/template/{.kiro → .sce}/tools/error_handler.py +0 -0
- /package/template/{.kiro → .sce}/tools/improvement_identifier.py +0 -0
- /package/template/{.kiro → .sce}/tools/modification_applicator.py +0 -0
- /package/template/{.kiro → .sce}/tools/quality_gate_enforcer.py +0 -0
- /package/template/{.kiro → .sce}/tools/quality_scorer.py +0 -0
- /package/template/{.kiro → .sce}/tools/report_generator.py +0 -0
- /package/template/{.kiro → .sce}/tools/ultrawork_enhancer.py +0 -0
- /package/template/{.kiro → .sce}/tools/ultrawork_enhancer_refactored.py +0 -0
- /package/template/{.kiro → .sce}/tools/ultrawork_enhancer_v2.py +0 -0
- /package/template/{.kiro → .sce}/tools/ultrawork_enhancer_v3.py +0 -0
- /package/template/{.kiro → .sce}/tools/workflow_quality_gate.py +0 -0
|
@@ -90,11 +90,11 @@ class WorkspaceContextResolver {
|
|
|
90
90
|
* Check if a directory is a valid sce project directory
|
|
91
91
|
*
|
|
92
92
|
* @param {string} dirPath - Directory path to check
|
|
93
|
-
* @returns {Promise<boolean>} True if directory contains .
|
|
93
|
+
* @returns {Promise<boolean>} True if directory contains .sce/ structure
|
|
94
94
|
*/
|
|
95
95
|
async isValidKseDirectory(dirPath) {
|
|
96
96
|
try {
|
|
97
|
-
const kiroPath = path.join(dirPath, '.
|
|
97
|
+
const kiroPath = path.join(dirPath, '.sce');
|
|
98
98
|
const exists = await fs.pathExists(kiroPath);
|
|
99
99
|
|
|
100
100
|
if (!exists) {
|
|
@@ -83,8 +83,8 @@ class WorkspaceRegistry {
|
|
|
83
83
|
return false;
|
|
84
84
|
}
|
|
85
85
|
|
|
86
|
-
// Check if .
|
|
87
|
-
const kiroPath = path.join(workspacePath, '.
|
|
86
|
+
// Check if .sce directory exists
|
|
87
|
+
const kiroPath = path.join(workspacePath, '.sce');
|
|
88
88
|
const kiroExists = await fs.pathExists(kiroPath);
|
|
89
89
|
|
|
90
90
|
return kiroExists;
|
|
@@ -293,12 +293,12 @@ class WorkspaceStateManager {
|
|
|
293
293
|
throw new Error(`Workspace "${name}" already exists`);
|
|
294
294
|
}
|
|
295
295
|
|
|
296
|
-
// Validate path (check for .
|
|
297
|
-
const kiroPath = path.join(workspacePath, '.
|
|
296
|
+
// Validate path (check for .sce directory)
|
|
297
|
+
const kiroPath = path.join(workspacePath, '.sce');
|
|
298
298
|
const kiroExists = await fs.pathExists(kiroPath);
|
|
299
299
|
if (!kiroExists) {
|
|
300
300
|
throw new Error(`Path "${workspacePath}" is not a valid sce project directory. ` +
|
|
301
|
-
`Ensure it exists and contains a .
|
|
301
|
+
`Ensure it exists and contains a .sce/ directory.`);
|
|
302
302
|
}
|
|
303
303
|
|
|
304
304
|
// Create workspace
|
|
@@ -10,7 +10,7 @@ const { execSync } = require('child_process');
|
|
|
10
10
|
*/
|
|
11
11
|
class WorkspaceManager {
|
|
12
12
|
constructor() {
|
|
13
|
-
this.workspaceBaseDir = '.
|
|
13
|
+
this.workspaceBaseDir = '.sce/workspace';
|
|
14
14
|
this.gitignoreContent = '# Personal workspaces - not committed\n*\n!.gitignore\n';
|
|
15
15
|
}
|
|
16
16
|
|
|
@@ -54,7 +54,7 @@ class WorkspaceSync {
|
|
|
54
54
|
}
|
|
55
55
|
|
|
56
56
|
// 获取所有 Spec
|
|
57
|
-
const specsPath = path.join(projectPath, '.
|
|
57
|
+
const specsPath = path.join(projectPath, '.sce/specs');
|
|
58
58
|
const specsExist = await fs.pathExists(specsPath);
|
|
59
59
|
|
|
60
60
|
if (!specsExist) {
|
|
@@ -131,7 +131,7 @@ class WorkspaceSync {
|
|
|
131
131
|
|
|
132
132
|
try {
|
|
133
133
|
// 读取共享任务状态
|
|
134
|
-
const tasksPath = path.join(projectPath, '.
|
|
134
|
+
const tasksPath = path.join(projectPath, '.sce/specs', specName, 'tasks.md');
|
|
135
135
|
const tasksExist = await fs.pathExists(tasksPath);
|
|
136
136
|
|
|
137
137
|
if (!tasksExist) {
|
package/locales/en.json
CHANGED
|
@@ -6,15 +6,15 @@
|
|
|
6
6
|
"init": {
|
|
7
7
|
"description": "Initialize a new SCE project",
|
|
8
8
|
"projectNamePrompt": "Enter project name:",
|
|
9
|
-
"forceOption": "Force initialization even if .
|
|
10
|
-
"alreadyExists": "⚠️ .
|
|
9
|
+
"forceOption": "Force initialization even if .sce directory exists",
|
|
10
|
+
"alreadyExists": "⚠️ .sce directory already exists",
|
|
11
11
|
"overwritePrompt": "Do you want to overwrite it?",
|
|
12
12
|
"cancelled": "Initialization cancelled.",
|
|
13
13
|
"success": "🎉 SCE project initialized successfully!",
|
|
14
14
|
"nextSteps": "📋 Next steps:",
|
|
15
|
-
"step1": "Create your first spec: mkdir .
|
|
15
|
+
"step1": "Create your first spec: mkdir .sce/specs/01-00-your-feature",
|
|
16
16
|
"step2": "Write basic requirements.md",
|
|
17
|
-
"step3": "Enhance with Ultrawork: sce enhance requirements .
|
|
17
|
+
"step3": "Enhance with Ultrawork: sce enhance requirements .sce/specs/01-00-your-feature/requirements.md",
|
|
18
18
|
"startJourney": "🔥 Start your Ultrawork journey!",
|
|
19
19
|
"error": "❌ Error initializing project:"
|
|
20
20
|
},
|
package/locales/zh.json
CHANGED
|
@@ -6,15 +6,15 @@
|
|
|
6
6
|
"init": {
|
|
7
7
|
"description": "初始化新的 SCE(场景能力引擎)项目",
|
|
8
8
|
"projectNamePrompt": "请输入项目名称:",
|
|
9
|
-
"forceOption": "强制初始化,即使 .
|
|
10
|
-
"alreadyExists": "⚠️ .
|
|
9
|
+
"forceOption": "强制初始化,即使 .sce 目录已存在",
|
|
10
|
+
"alreadyExists": "⚠️ .sce 目录已存在",
|
|
11
11
|
"overwritePrompt": "是否要覆盖它?",
|
|
12
12
|
"cancelled": "初始化已取消。",
|
|
13
13
|
"success": "🎉 SCE 项目初始化成功!",
|
|
14
14
|
"nextSteps": "📋 下一步操作:",
|
|
15
|
-
"step1": "创建第一个 Spec: mkdir .
|
|
15
|
+
"step1": "创建第一个 Spec: mkdir .sce/specs/01-00-your-feature",
|
|
16
16
|
"step2": "编写基础 requirements.md",
|
|
17
|
-
"step3": "使用 Ultrawork 增强: sce enhance requirements .
|
|
17
|
+
"step3": "使用 Ultrawork 增强: sce enhance requirements .sce/specs/01-00-your-feature/requirements.md",
|
|
18
18
|
"startJourney": "🔥 开始你的 Ultrawork 之旅!",
|
|
19
19
|
"error": "❌ 初始化项目时出错:"
|
|
20
20
|
},
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "scene-capability-engine",
|
|
3
|
-
"version": "3.3.
|
|
3
|
+
"version": "3.3.10",
|
|
4
4
|
"description": "SCE (Scene Capability Engine) - A CLI tool and npm package for spec-driven development with AI coding assistants.",
|
|
5
5
|
"main": "index.js",
|
|
6
6
|
"bin": {
|
|
@@ -11,10 +11,10 @@
|
|
|
11
11
|
"bin/",
|
|
12
12
|
"lib/",
|
|
13
13
|
"template/",
|
|
14
|
-
"!template/.
|
|
15
|
-
"!template/.
|
|
16
|
-
"!template/.
|
|
17
|
-
"!template/.
|
|
14
|
+
"!template/.sce/tools/__pycache__/",
|
|
15
|
+
"!template/.sce/tools/**/*.pyc",
|
|
16
|
+
"!template/.sce/tools/**/*.pyo",
|
|
17
|
+
"!template/.sce/tools/**/*.pyd",
|
|
18
18
|
"locales/",
|
|
19
19
|
"docs/",
|
|
20
20
|
"README.md",
|
|
@@ -48,14 +48,14 @@
|
|
|
48
48
|
"report:capability-mapping": "node scripts/capability-mapping-report.js --input '{\"changes\":[],\"templates\":[],\"ontology\":{}}' --json",
|
|
49
49
|
"report:matrix-remediation-queue": "node scripts/moqui-matrix-remediation-queue.js --json",
|
|
50
50
|
"run:matrix-remediation-phased": "node scripts/moqui-matrix-remediation-phased-runner.js",
|
|
51
|
-
"run:matrix-remediation-from-baseline": "node scripts/moqui-matrix-remediation-phased-runner.js --baseline .
|
|
52
|
-
"run:matrix-remediation-clusters": "node bin/sce.js auto close-loop-batch .
|
|
53
|
-
"run:matrix-remediation-clusters-phased": "node scripts/moqui-matrix-remediation-phased-runner.js --cluster-goals .
|
|
51
|
+
"run:matrix-remediation-from-baseline": "node scripts/moqui-matrix-remediation-phased-runner.js --baseline .sce/reports/release-evidence/moqui-template-baseline.json",
|
|
52
|
+
"run:matrix-remediation-clusters": "node bin/sce.js auto close-loop-batch .sce/auto/matrix-remediation.capability-clusters.json --format json --batch-parallel 1 --batch-agent-budget 2 --batch-retry-until-complete --json",
|
|
53
|
+
"run:matrix-remediation-clusters-phased": "node scripts/moqui-matrix-remediation-phased-runner.js --cluster-goals .sce/auto/matrix-remediation.capability-clusters.json",
|
|
54
54
|
"gate:interactive-plan": "node scripts/interactive-change-plan-gate.js --plan docs/interactive-customization/change-plan.sample.json --json",
|
|
55
55
|
"report:interactive-context-bridge": "node scripts/interactive-context-bridge.js --input docs/interactive-customization/moqui-context-provider.sample.json --json",
|
|
56
56
|
"report:interactive-dialogue-governance": "node scripts/interactive-dialogue-governance.js --goal \"Improve order entry speed without changing payment policy\" --context docs/interactive-customization/page-context.sample.json --json",
|
|
57
57
|
"report:interactive-intent": "node scripts/interactive-intent-build.js --context docs/interactive-customization/page-context.sample.json --goal \"Must improve order approval speed without changing payment authorization policy\" --user-id demo-user --json",
|
|
58
|
-
"report:interactive-plan": "node scripts/interactive-plan-build.js --intent .
|
|
58
|
+
"report:interactive-plan": "node scripts/interactive-plan-build.js --intent .sce/reports/interactive-change-intent.json --context docs/interactive-customization/page-context.sample.json --json",
|
|
59
59
|
"report:interactive-runtime-policy": "node scripts/interactive-runtime-policy-evaluate.js --plan docs/interactive-customization/change-plan.sample.json --json",
|
|
60
60
|
"report:interactive-work-order": "node scripts/interactive-work-order-build.js --plan docs/interactive-customization/change-plan.sample.json --json",
|
|
61
61
|
"report:interactive-approval-status": "node scripts/interactive-approval-workflow.js --action status --json",
|
|
@@ -24,7 +24,7 @@ This project uses **Spec-driven development** - a structured approach where:
|
|
|
24
24
|
**IMPORTANT**: After installing or updating sce, read this section to understand all available capabilities. Using the right tool for the job ensures efficient, high-quality development.
|
|
25
25
|
|
|
26
26
|
### Core: Spec-Driven Development
|
|
27
|
-
- `sce adopt` — Initialize sce in a project (creates `.
|
|
27
|
+
- `sce adopt` — Initialize sce in a project (creates `.sce/` structure)
|
|
28
28
|
- `sce create-spec <name>` — Create a new Spec (requirements + design + tasks)
|
|
29
29
|
- `sce status` — Show project status and Spec progress
|
|
30
30
|
- `sce workflows` — List available Specs and workflows
|
|
@@ -70,7 +70,7 @@ When multiple AI agents work on the same project simultaneously:
|
|
|
70
70
|
- **SteeringFileLock** (`lib/lock`) — Steering file write serialization
|
|
71
71
|
- **MergeCoordinator** (`lib/collab`) — Git branch isolation per agent
|
|
72
72
|
- **Coordinator** (`lib/collab`) — Central task assignment (optional)
|
|
73
|
-
- Config: `.
|
|
73
|
+
- Config: `.sce/config/multi-agent.json` (`enabled: true` to activate)
|
|
74
74
|
- All components are no-ops in single-agent mode (zero overhead)
|
|
75
75
|
- See `docs/multi-agent-coordination-guide.md` for full API reference
|
|
76
76
|
|
|
@@ -96,7 +96,7 @@ Automate parallel Spec execution via Codex CLI sub-agents (replaces manual multi
|
|
|
96
96
|
- `sce orchestrate run --specs "spec-a,spec-b,spec-c" --max-parallel 3` — Start multi-agent orchestration
|
|
97
97
|
- `sce orchestrate status` — View orchestration progress (per-Spec status, overall state)
|
|
98
98
|
- `sce orchestrate stop` — Gracefully stop all sub-agents
|
|
99
|
-
- **OrchestratorConfig** (`lib/orchestrator`) — Configuration management (agent backend, parallelism, timeout, retries) via `.
|
|
99
|
+
- **OrchestratorConfig** (`lib/orchestrator`) — Configuration management (agent backend, parallelism, timeout, retries) via `.sce/config/orchestrator.json`
|
|
100
100
|
- **BootstrapPromptBuilder** (`lib/orchestrator`) — Builds bootstrap prompts with Spec path, steering context, execution instructions
|
|
101
101
|
- **AgentSpawner** (`lib/orchestrator`) — Process manager for Codex CLI sub-agents with timeout detection, graceful termination (SIGTERM → SIGKILL)
|
|
102
102
|
- **StatusMonitor** (`lib/orchestrator`) — Codex JSON Lines event parsing, per-Spec status tracking, orchestration-level aggregation
|
|
@@ -131,7 +131,7 @@ Automate parallel Spec execution via Codex CLI sub-agents (replaces manual multi
|
|
|
131
131
|
|
|
132
132
|
**Step 1: Check if Spec exists**
|
|
133
133
|
```
|
|
134
|
-
Look in .
|
|
134
|
+
Look in .sce/specs/ directory
|
|
135
135
|
```
|
|
136
136
|
|
|
137
137
|
**Step 2: If Spec exists**
|
|
@@ -150,7 +150,7 @@ Look in .kiro/specs/ directory
|
|
|
150
150
|
|
|
151
151
|
### When Working in Multi-Agent Mode
|
|
152
152
|
|
|
153
|
-
If `.
|
|
153
|
+
If `.sce/config/multi-agent.json` exists with `enabled: true`:
|
|
154
154
|
1. Register with AgentRegistry before starting work
|
|
155
155
|
2. Acquire task locks before modifying any task
|
|
156
156
|
3. Use TaskStatusStore for concurrent-safe tasks.md updates
|
|
@@ -162,7 +162,7 @@ If `.kiro/config/multi-agent.json` exists with `enabled: true`:
|
|
|
162
162
|
## 📁 Project Structure
|
|
163
163
|
|
|
164
164
|
```
|
|
165
|
-
.
|
|
165
|
+
.sce/
|
|
166
166
|
├── README.md # This file - project development guide
|
|
167
167
|
├── specs/ # All Specs live here
|
|
168
168
|
│ └── {spec-name}/ # Individual Spec
|
|
@@ -185,9 +185,9 @@ If `.kiro/config/multi-agent.json` exists with `enabled: true`:
|
|
|
185
185
|
```
|
|
186
186
|
|
|
187
187
|
**Key files:**
|
|
188
|
-
- `.
|
|
189
|
-
- `.
|
|
190
|
-
- `.
|
|
188
|
+
- `.sce/steering/CORE_PRINCIPLES.md` - Development principles for this project
|
|
189
|
+
- `.sce/steering/CURRENT_CONTEXT.md` - What we're currently working on
|
|
190
|
+
- `.sce/specs/{spec-name}/` - Feature specifications
|
|
191
191
|
|
|
192
192
|
---
|
|
193
193
|
|
|
@@ -230,13 +230,13 @@ A Spec is a complete feature definition with three parts:
|
|
|
230
230
|
|
|
231
231
|
| Need | Where |
|
|
232
232
|
|------|-------|
|
|
233
|
-
| Feature requirements | `.
|
|
234
|
-
| Implementation design | `.
|
|
235
|
-
| What to work on | `.
|
|
236
|
-
| Project context | `.
|
|
237
|
-
| Development rules | `.
|
|
233
|
+
| Feature requirements | `.sce/specs/{spec-name}/requirements.md` |
|
|
234
|
+
| Implementation design | `.sce/specs/{spec-name}/design.md` |
|
|
235
|
+
| What to work on | `.sce/specs/{spec-name}/tasks.md` |
|
|
236
|
+
| Project context | `.sce/steering/CURRENT_CONTEXT.md` |
|
|
237
|
+
| Development rules | `.sce/steering/CORE_PRINCIPLES.md` |
|
|
238
238
|
| Project status | `sce status` |
|
|
239
|
-
| Multi-agent setup | `.
|
|
239
|
+
| Multi-agent setup | `.sce/config/multi-agent.json` |
|
|
240
240
|
| Full documentation | `docs/` directory |
|
|
241
241
|
|
|
242
242
|
---
|
|
@@ -10,7 +10,7 @@
|
|
|
10
10
|
|
|
11
11
|
**工作流**: 创建 Spec → requirements.md → design.md → tasks.md → 执行任务 → 产物归档
|
|
12
12
|
|
|
13
|
-
**目录**: `.
|
|
13
|
+
**目录**: `.sce/specs/{feature-name}/` 包含文档和产物(scripts/, reports/, diagnostics/, tests/, results/)
|
|
14
14
|
|
|
15
15
|
---
|
|
16
16
|
|
|
@@ -20,7 +20,7 @@
|
|
|
20
20
|
|
|
21
21
|
**核心**: 项目已由 sce 接管,AI 拥有完全开发和管理权限
|
|
22
22
|
|
|
23
|
-
**接管标志**: 存在 `.
|
|
23
|
+
**接管标志**: 存在 `.sce/` 目录、`version.json`、`specs/`、`steering/`
|
|
24
24
|
|
|
25
25
|
**AI 权限**: 创建执行 Spec、修改代码、运行测试、访问网络、发布版本、更新文档、管理依赖
|
|
26
26
|
|
|
@@ -34,7 +34,7 @@
|
|
|
34
34
|
### 2. 文件管理
|
|
35
35
|
**根目录**: 禁止随意生成临时文件,用完立删
|
|
36
36
|
|
|
37
|
-
**Steering 严格管控** ⚠️: 只放 4 个核心文件(CORE_PRINCIPLES, ENVIRONMENT, CURRENT_CONTEXT, RULES_GUIDE),其他归档到 `.
|
|
37
|
+
**Steering 严格管控** ⚠️: 只放 4 个核心文件(CORE_PRINCIPLES, ENVIRONMENT, CURRENT_CONTEXT, RULES_GUIDE),其他归档到 `.sce/specs/` 或 `docs/`
|
|
38
38
|
|
|
39
39
|
### 3. 质量零容忍 ⚠️⚠️⚠️
|
|
40
40
|
|
|
@@ -104,7 +104,7 @@
|
|
|
104
104
|
|
|
105
105
|
### 9. 版本同步和 Steering 刷新原则
|
|
106
106
|
|
|
107
|
-
**核心**: 版本更新或首次安装后,必须阅读 `.
|
|
107
|
+
**核心**: 版本更新或首次安装后,必须阅读 `.sce/README.md` 并刷新 Steering
|
|
108
108
|
|
|
109
109
|
**时机**: 首次安装、版本更新、长时间未用、功能不一致时
|
|
110
110
|
|
|
@@ -14,9 +14,9 @@
|
|
|
14
14
|
**本地**: Windows (cmd) | Python 3.8+ | AI IDE
|
|
15
15
|
|
|
16
16
|
**核心组件**:
|
|
17
|
-
- `.
|
|
18
|
-
- `.
|
|
19
|
-
- `.
|
|
17
|
+
- `.sce/specs/` - Spec 驱动开发
|
|
18
|
+
- `.sce/steering/` - AI 行为规则
|
|
19
|
+
- `.sce/tools/` - Ultrawork 工具
|
|
20
20
|
|
|
21
21
|
## 🔧 配置
|
|
22
22
|
|
|
@@ -54,13 +54,13 @@ class BackupManager:
|
|
|
54
54
|
if self.backup_dir:
|
|
55
55
|
return self.backup_dir
|
|
56
56
|
|
|
57
|
-
# 自动确定备份目录:.
|
|
57
|
+
# 自动确定备份目录:.sce/specs/{spec-name}/backups/
|
|
58
58
|
file_path_obj = Path(file_path)
|
|
59
59
|
|
|
60
|
-
# 查找 .
|
|
60
|
+
# 查找 .sce/specs/ 目录
|
|
61
61
|
current = file_path_obj.parent
|
|
62
62
|
while current != current.parent:
|
|
63
|
-
if current.name == 'specs' and current.parent.name == '.
|
|
63
|
+
if current.name == 'specs' and current.parent.name == '.sce':
|
|
64
64
|
# 找到 specs 目录,使用当前文件所在的 spec 目录
|
|
65
65
|
spec_dir = file_path_obj.parent
|
|
66
66
|
backup_dir = spec_dir / 'backups'
|
|
@@ -60,7 +60,7 @@ class ConfigurationManager:
|
|
|
60
60
|
支持项目级和 Spec 级配置,Spec 级配置优先
|
|
61
61
|
"""
|
|
62
62
|
|
|
63
|
-
DEFAULT_PROJECT_CONFIG_PATH = ".
|
|
63
|
+
DEFAULT_PROJECT_CONFIG_PATH = ".sce/ultrawork-config.json"
|
|
64
64
|
SPEC_CONFIG_FILENAME = "ultrawork-config.json"
|
|
65
65
|
|
|
66
66
|
def __init__(self):
|
package/template/README.md
CHANGED
|
@@ -23,32 +23,32 @@
|
|
|
23
23
|
.\setup-project.bat
|
|
24
24
|
```
|
|
25
25
|
|
|
26
|
-
这个脚本会初始化 `.
|
|
26
|
+
这个脚本会初始化 `.sce` 目录的配置,更新项目名称。
|
|
27
27
|
|
|
28
28
|
### 2. 创建和增强 Spec
|
|
29
29
|
|
|
30
30
|
```bash
|
|
31
31
|
# 创建 Spec 目录
|
|
32
|
-
mkdir .
|
|
32
|
+
mkdir .sce\specs\01-00-your-feature-name
|
|
33
33
|
|
|
34
34
|
# 编写基础 requirements.md
|
|
35
35
|
# (手动创建基本需求文档)
|
|
36
36
|
|
|
37
37
|
# 应用 Ultrawork 增强
|
|
38
|
-
python .
|
|
38
|
+
python .sce\tools\ultrawork_enhancer.py requirements .sce\specs\01-00-your-feature-name\requirements.md
|
|
39
39
|
```
|
|
40
40
|
|
|
41
41
|
### 3. 完整工作流
|
|
42
42
|
|
|
43
43
|
```bash
|
|
44
44
|
# 增强需求文档
|
|
45
|
-
python .
|
|
45
|
+
python .sce\tools\ultrawork_enhancer.py requirements .sce\specs\spec-name\requirements.md
|
|
46
46
|
|
|
47
47
|
# 增强设计文档
|
|
48
|
-
python .
|
|
48
|
+
python .sce\tools\ultrawork_enhancer.py design .sce\specs\spec-name\design.md .sce\specs\spec-name\requirements.md
|
|
49
49
|
|
|
50
50
|
# 检查任务完成情况
|
|
51
|
-
python .
|
|
51
|
+
python .sce\tools\ultrawork_enhancer.py tasks .sce\specs\spec-name\tasks.md
|
|
52
52
|
```
|
|
53
53
|
|
|
54
54
|
## 📊 质量标准
|
|
@@ -68,7 +68,7 @@ python .kiro\tools\ultrawork_enhancer.py tasks .kiro\specs\spec-name\tasks.md
|
|
|
68
68
|
## 🛠️ 核心脚本
|
|
69
69
|
|
|
70
70
|
### setup-project.bat
|
|
71
|
-
**作用**: 初始化 `.
|
|
71
|
+
**作用**: 初始化 `.sce` 目录配置
|
|
72
72
|
- 更新项目名称
|
|
73
73
|
- 检查工具完整性
|
|
74
74
|
- 提供使用指导
|
|
@@ -84,13 +84,13 @@ python .kiro\tools\ultrawork_enhancer.py tasks .kiro\specs\spec-name\tasks.md
|
|
|
84
84
|
**使用方法**:
|
|
85
85
|
```bash
|
|
86
86
|
# Requirements 阶段
|
|
87
|
-
python .
|
|
87
|
+
python .sce\tools\ultrawork_enhancer.py requirements <path-to-requirements.md>
|
|
88
88
|
|
|
89
89
|
# Design 阶段
|
|
90
|
-
python .
|
|
90
|
+
python .sce\tools\ultrawork_enhancer.py design <path-to-design.md> <path-to-requirements.md>
|
|
91
91
|
|
|
92
92
|
# Tasks 阶段
|
|
93
|
-
python .
|
|
93
|
+
python .sce\tools\ultrawork_enhancer.py tasks <path-to-tasks.md>
|
|
94
94
|
```
|
|
95
95
|
|
|
96
96
|
## 🔥 Ultrawork 精神
|
|
@@ -103,8 +103,8 @@ python .kiro\tools\ultrawork_enhancer.py tasks <path-to-tasks.md>
|
|
|
103
103
|
|
|
104
104
|
## 📚 参考文档
|
|
105
105
|
|
|
106
|
-
- `.
|
|
107
|
-
- `.
|
|
106
|
+
- `.sce/README.md` - SCE 系统说明
|
|
107
|
+
- `.sce/steering/CORE_PRINCIPLES.md` - 核心原则(包含 Ultrawork 精神)
|
|
108
108
|
|
|
109
109
|
---
|
|
110
110
|
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|