@moretea-labs/forge 1.8.1 → 1.8.2
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/AGENTS.md +5 -2
- package/CHANGELOG.md +20 -0
- package/README.en.md +24 -3
- package/README.md +10 -6
- package/README.zh-CN.md +5 -3
- package/THIRD_PARTY_NOTICES.md +1 -2
- package/adapters/chatgpt/browser-delivery-runtime.ts +5 -3
- package/adapters/chatgpt/provider-delivery.ts +1 -1
- package/adapters/chatgpt/work-conversation-binding-store.ts +20 -1
- package/adapters/computer/chatgpt-extension-target.ts +295 -50
- package/adapters/computer/chrome-extension/background.js +227 -71
- package/adapters/computer/chrome-extension/content.js +181 -157
- package/adapters/computer/chrome-extension/manifest.json +3 -1
- package/adapters/computer/desktop-operator-provider.ts +18 -6
- package/adapters/computer/interaction-target-authority.ts +39 -9
- package/adapters/mcp/access-mode.ts +18 -39
- package/adapters/mcp/auth.ts +2 -6
- package/adapters/mcp/instructions.ts +2 -2
- package/adapters/mcp/multi-repository.ts +7 -28
- package/adapters/mcp/runtime-gateway/context-adapter.ts +79 -40
- package/adapters/mcp/runtime-gateway/context-pack-sidecar.ts +7 -15
- package/adapters/mcp/runtime-gateway/execution-tools.ts +7 -13
- package/adapters/mcp/runtime-gateway/plugin-adapter.ts +16 -3
- package/adapters/mcp/runtime-gateway/process-tools.ts +3 -21
- package/adapters/mcp/runtime-gateway/router.ts +3 -5
- package/adapters/mcp/runtime-gateway/routing-policy.ts +17 -10
- package/adapters/mcp/runtime-gateway/runtime-observation-adapter.ts +1 -1
- package/adapters/mcp/runtime-gateway/runtime-tool-definitions.ts +14 -9
- package/adapters/mcp/runtime-gateway/runtime-tools.ts +1 -5
- package/adapters/mcp/runtime-gateway/scheduler-adapter.ts +36 -1
- package/adapters/mcp/runtime-gateway/status-inbox-adapter.ts +58 -4
- package/adapters/mcp/runtime-gateway/typescript-navigation-sidecar.ts +7 -3
- package/adapters/mcp/runtime-gateway/work-adapter.ts +16 -16
- package/adapters/mcp/runtime-gateway/work-input-wire-migration.ts +0 -17
- package/adapters/mcp/runtime-gateway/work-semantic-operations.ts +69 -12
- package/adapters/mcp/runtime-gateway/workflow-supervisor-adapter.ts +26 -2
- package/adapters/mcp/server.ts +24 -3
- package/adapters/mcp/setup.ts +4 -10
- package/adapters/mcp/tool-mapping/access-tools.ts +0 -6
- package/adapters/mcp/tool-mapping/legacy-tool-service.ts +672 -2935
- package/adapters/mcp/tool-mapping/post-finalize-work-attribution.ts +1 -1
- package/adapters/mcp/tool-mapping/repository-tools.ts +52 -86
- package/adapters/mcp/toolset-names.ts +11 -42
- package/adapters/mcp/toolset.ts +16 -90
- package/{src/cli → adapters}/mcp/transports/AGENTS.md +5 -5
- package/{src/cli → adapters}/mcp/transports/CLAUDE.md +5 -5
- package/adapters/mcp/transports/http-observation.ts +18 -6
- package/adapters/mcp/transports/http-post-lifecycle.ts +19 -0
- package/adapters/mcp/transports/http.ts +54 -14
- package/adapters/mcp/types.ts +0 -6
- package/assets/hooks/lib/session-state.sh +0 -38
- package/assets/hooks/post-bash.sh +1 -1
- package/assets/hooks/post-tool-observer.sh +0 -5
- package/assets/hooks/prompt-guard.sh +0 -55
- package/assets/partials/04-project-structure.partial.md +1 -1
- package/assets/partials/07-footer.partial.md +1 -1
- package/assets/partials-agents/02-operating-mode.partial.md +1 -1
- package/assets/partials-agents/08-deep-docs.partial.md +1 -1
- package/assets/reference-configs/agentic-development-flow.md +1 -1
- package/assets/reference-configs/external-tooling.md +0 -76
- package/assets/reference-configs/release-deploy.md +1 -1
- package/assets/templates/helpers/architecture-queue.sh +1 -1
- package/assets/templates/helpers/check-agent-tooling.sh +1 -327
- package/assets/templates/helpers/check-task-workflow.sh +1 -1
- package/assets/templates/helpers/ensure-task-workflow.sh +0 -14
- package/assets/templates/helpers/migrate-project-template.sh +2 -2
- package/assets/workflow-contract.v1.json +0 -2
- package/docs/README.md +5 -2
- package/docs/architecture/CURRENT.md +114 -30
- package/docs/architecture/decisions/20260904-ios-device-migration-baseline.md +42 -0
- package/docs/architecture/decisions/20260918-stable-candidate-release-lifecycle.md +15 -2
- package/docs/architecture/decisions/20260924-thin-semantic-working-context.md +4 -2
- package/docs/architecture/decisions/20261001-supervisor-turn-authority.md +109 -4
- package/docs/architecture/decisions/20261009-exact-code-context-discovery.md +19 -0
- package/docs/architecture/decisions/20261009-generated-xcode-cache-retention.md +37 -0
- package/docs/architecture/decisions/20261011-autonomous-continuation-convergence.md +597 -0
- package/docs/architecture/decisions/20261017-edit-session-finalization-reconciliation.md +17 -0
- package/docs/architecture/decisions/20261019-retire-host-skills.md +16 -0
- package/docs/architecture/diagrams/agentic-dev-plugin-architecture.html +1 -1
- package/docs/architecture/domains/public-surface.md +3 -5
- package/docs/architecture/domains/verification.md +5 -5
- package/docs/architecture/modules/controller-runtime/transport-lifecycle.md +2 -2
- package/docs/architecture/requests/2026-09-04-computer-plugin-workflow-taxonomy.md +4 -4
- package/docs/architecture/reviews/20261015-code-search-runtime-acceptance.md +75 -0
- package/docs/forge-plugin-management.md +14 -2
- package/docs/operations/controller-browser-plugin.md +23 -0
- package/docs/operations/features.md +6 -7
- package/docs/operations/features.zh-CN.md +1 -1
- package/docs/operations/github-repository.md +4 -4
- package/docs/operations/github-semantic-release-projection.md +20 -0
- package/docs/operations/homebrew.md +2 -2
- package/docs/operations/mcp-tool-exposure.md +13 -54
- package/docs/operations/runtime-performance-diagnostics.md +8 -0
- package/docs/operations/standalone-disaster-recovery.md +1 -1
- package/docs/tutorials/01-install-and-start.zh-CN.md +1 -1
- package/docs/tutorials/03-first-repository-task.md +2 -0
- package/docs/wiki/Computer-and-Plugins.md +78 -0
- package/docs/wiki/Computer-and-Plugins.zh-CN.md +88 -0
- package/docs/wiki/Home.md +16 -2
- package/docs/wiki/Implementation.md +24 -12
- package/docs/wiki/Installation.md +28 -32
- package/docs/wiki/Integrations.md +4 -0
- package/docs/wiki/Quick-Start.md +35 -22
- package/docs/wiki/Releases-and-Upgrades.md +15 -25
- package/docs/wiki/_Sidebar.md +5 -1
- package/package.json +1 -12
- package/packages/kernel/controller/infrastructure/controller-session-store.ts +63 -38
- package/packages/kernel/identity/infrastructure/activity-projection-store.ts +10 -0
- package/packages/kernel/scheduler/application/eligibility.ts +4 -1
- package/packages/kernel/scheduler/infrastructure/schedule-store.ts +13 -10
- package/packages/kernel/work/application/work-service.ts +1 -0
- package/packages/kernel/work/domain/repository-completion-receipt.ts +1 -1
- package/packages/kernel/work/domain/state-machine.ts +9 -2
- package/packages/kernel/work/infrastructure/work-contract-store.ts +28 -1
- package/packages/plugin-runtime/browser/provider-registry.ts +12 -36
- package/packages/plugin-runtime/computer/conversation-target.ts +17 -7
- package/scripts/assemble-template.ts +11 -72
- package/scripts/check-mcp-compatibility.ts +55 -74
- package/scripts/check-package-identity.mjs +0 -5
- package/scripts/check-runtime-architecture.mjs +305 -28
- package/scripts/init-project.sh +0 -46
- package/scripts/install-ios-hid-toolchain.sh +60 -0
- package/scripts/install-standalone-recovery.ts +1 -1
- package/scripts/lib/project-init-lib.sh +3 -3
- package/scripts/migrate-windows-wsl-controller-home.ts +2 -0
- package/scripts/open-source-audit-allowlist.txt +0 -1
- package/scripts/run-governed-gate.ts +2 -0
- package/scripts/smoke-ios-physical-device.ts +38 -10
- package/scripts/smoke-mcp-http-runtime.ts +7 -8
- package/scripts/smoke-mcp-tool-surface.ts +27 -41
- package/scripts/smoke-workflow-supervisor-chrome-adapter.ts +6 -3
- package/scripts/sync-generated-authority.mjs +0 -1
- package/src/cli/agent-jobs/executor-health.ts +1 -1
- package/src/cli/agent-jobs/integration.ts +2 -2
- package/src/cli/chatgpt-browser/file-policy.ts +2 -2
- package/src/cli/commands/doctor.ts +1 -143
- package/src/cli/commands/global-runtime.ts +3 -196
- package/src/cli/commands/init-hook.ts +6 -23
- package/src/cli/commands/init.ts +3 -252
- package/src/cli/commands/mcp.ts +0 -5
- package/src/cli/commands/prompt-guard-decision.ts +0 -2
- package/src/cli/commands/recovery.ts +2 -14
- package/src/cli/commands/repository.ts +17 -1
- package/src/cli/commands/setup-execution.ts +41 -0
- package/src/cli/controller/completion-orchestrator.ts +1 -1
- package/src/cli/controller/composite-operations.ts +1 -1
- package/src/cli/controller/context/instruction-context.ts +1 -1
- package/src/cli/controller/context/known-paths.ts +2 -2
- package/src/cli/controller/context/query-planning.ts +11 -4
- package/src/cli/controller/context/rule-resolution.ts +2 -2
- package/src/cli/controller/context/source-materializer.ts +2 -2
- package/src/cli/controller/context/structural-provider.ts +84 -0
- package/src/cli/controller/context/structural.ts +6 -6
- package/src/cli/controller/context/types.ts +8 -9
- package/src/cli/controller/context-pack.ts +97 -76
- package/src/cli/controller/operational-plan.ts +1 -1
- package/src/cli/controller/systemd-user.ts +4 -10
- package/src/cli/editing/edit-session.ts +17 -5
- package/src/cli/github/github.ts +4 -4
- package/src/cli/github/semantic-projection.ts +174 -0
- package/src/cli/hook/prompt-intents.ts +0 -9
- package/src/cli/index.ts +1 -43
- package/src/cli/local-bridge/connector-freshness.ts +1 -12
- package/src/cli/local-bridge/console-automations.ts +1 -1
- package/src/cli/local-bridge/console-view-models.ts +1 -1
- package/src/cli/local-bridge/facade-api.ts +0 -2
- package/src/cli/repositories/command-classifier.ts +0 -9
- package/src/cli/repositories/command-scope.ts +2 -2
- package/src/cli/repositories/locks.ts +20 -0
- package/src/cli/repositories/registry.ts +2 -1
- package/src/cli/repositories/safe-patch.ts +2 -12
- package/src/cli/repositories/structured-git.ts +39 -3
- package/src/cli/repository/inspector.ts +185 -343
- package/src/effects/process-runner.ts +17 -1
- package/src/runtime/context/generic-lsp-provider.ts +1 -1
- package/src/runtime/context/semantic-navigation-contract.ts +7 -0
- package/src/runtime/context/semantic-navigation.ts +1 -1
- package/src/runtime/control-plane/cleanup-artifact-retention.ts +4 -4
- package/src/runtime/control-plane/execution/work-delivery-service.ts +150 -31
- package/src/runtime/control-plane/execution/work-handle-authority.ts +12 -4
- package/src/runtime/control-plane/execution/work-handle-store.ts +53 -1
- package/src/runtime/control-plane/execution/work-operation-service.ts +20 -10
- package/src/runtime/control-plane/execution/work-preparation-service.ts +108 -4
- package/src/runtime/control-plane/execution/work-process-evidence.ts +2 -2
- package/src/runtime/control-plane/execution/work-terminal-cleanup.ts +28 -13
- package/src/runtime/control-plane/execution/work-validation-reconciler.ts +5 -1
- package/src/runtime/control-plane/execution/work-verification-snapshot.ts +1 -1
- package/src/runtime/control-plane/facade/capability-registry.ts +2 -0
- package/src/runtime/control-plane/facade/work-continuation.ts +1 -1
- package/src/runtime/control-plane/generated-cache-retention.ts +114 -63
- package/src/runtime/control-plane/global-scheduler/maintenance.ts +20 -8
- package/src/runtime/control-plane/global-scheduler/reconciliation.ts +1 -11
- package/src/runtime/control-plane/governance/external-effects.ts +1 -1
- package/src/runtime/control-plane/launcher/chatgpt-work-continuation.ts +1 -0
- package/src/runtime/control-plane/runtime-cleanup.ts +12 -93
- package/src/runtime/evidence/sensitive-output.ts +22 -2
- package/src/runtime/execution/jobs/child-reference.ts +11 -0
- package/src/runtime/execution/jobs/receipt-recovery.ts +1 -11
- package/src/runtime/execution/process-runtime/command-facade.ts +3 -3
- package/src/runtime/execution/process-runtime/runtime.ts +20 -16
- package/src/runtime/execution/thin-harness/execution-router.ts +16 -16
- package/src/runtime/execution/thin-harness/fast-executor.ts +2 -2
- package/src/runtime/execution/thin-harness/search-worker.ts +2 -2
- package/src/runtime/execution/workers/executor.ts +1 -2
- package/src/runtime/maintenance/cleanup.ts +41 -5
- package/src/runtime/plugins/action-application.ts +12 -1
- package/src/runtime/plugins/app-store-connect-adapter.ts +252 -4
- package/src/runtime/plugins/browser-adapter.ts +381 -313
- package/src/runtime/plugins/browser-macos-bridge.ts +114 -112
- package/src/runtime/plugins/browser-manifest-surface.ts +2 -1
- package/src/runtime/plugins/browser-registration.ts +2 -0
- package/src/runtime/plugins/browser-runtime.ts +26 -35
- package/src/runtime/plugins/computer-chatgpt-browser-adapter-installer.ts +11 -2
- package/src/runtime/plugins/computer-registration.ts +76 -9
- package/src/runtime/plugins/github-adapter.ts +30 -3
- package/src/runtime/plugins/gmail-adapter.ts +166 -1
- package/src/runtime/plugins/google-shared.ts +10 -5
- package/src/runtime/plugins/ios/remote-xpc-hid.ts +70 -30
- package/src/runtime/plugins/ios-adapter.ts +45 -40
- package/src/runtime/plugins/ios-agent-device.ts +54 -4
- package/src/runtime/plugins/ios-device-ownership.ts +103 -0
- package/src/runtime/plugins/ios-physical-device.ts +497 -79
- package/src/runtime/plugins/local-system-adapter.ts +1 -99
- package/src/runtime/plugins/store.ts +80 -7
- package/src/runtime/plugins/types.ts +4 -0
- package/src/runtime/projections/git-status-sampler.ts +2 -19
- package/src/runtime/recovery/actions.ts +1 -1
- package/src/runtime/recovery/lifecycle-inventory.ts +1 -11
- package/src/runtime/recovery/probe.ts +2 -2
- package/src/runtime/release/release-coordinator.ts +20 -4
- package/src/runtime/root/controller-progression-composition.ts +67 -5
- package/src/runtime/root/package-connector-service.ts +123 -11
- package/src/runtime/root/package-runtime-release.ts +6 -18
- package/src/runtime/root/package-runtime-service.ts +7 -13
- package/src/runtime/root/release-execution-canary.ts +18 -5
- package/src/runtime/root/release-manifest.ts +0 -34
- package/src/runtime/root/release-materialize.ts +0 -78
- package/src/runtime/root/runtime.ts +1 -2
- package/src/runtime/root/scheduled-controller-composition.ts +2 -1
- package/src/runtime/root/service.ts +90 -11
- package/src/runtime/root/types.ts +0 -6
- package/src/runtime/root/workflow-supervisor-composition.ts +207 -19
- package/src/runtime/root/workflow-supervisor-runtime.ts +365 -10
- package/src/runtime/safe-tooling/google-credential-store.ts +1 -11
- package/src/runtime/safe-tooling/ios-development.ts +22 -8
- package/src/runtime/safe-tooling/job-summary.ts +1 -1
- package/src/runtime/safe-tooling/workspace-auth.ts +4 -1
- package/src/runtime/shared/atomic-text-file.ts +21 -0
- package/src/runtime/shared/json-files.ts +8 -3
- package/src/runtime/standalone-recovery/core.ts +189 -174
- package/src/runtime/standalone-recovery/entry.ts +62 -30
- package/src/runtime/standalone-recovery/operation-lock.ts +11 -1
- package/src/runtime/workflow/schedules/chatgpt-automation-migration.ts +1 -0
- package/src/runtime/workflow/schedules/engine.ts +36 -14
- package/src/runtime/workflow/schedules/pending-activation.ts +11 -4
- package/src/runtime/workflow/schedules/work-continuation.ts +51 -6
- package/supervisor/client.ts +31 -14
- package/supervisor/control-plane.ts +210 -115
- package/supervisor/forge-validators.ts +88 -21
- package/supervisor/native-browser-adapter.ts +393 -28
- package/supervisor/native-messaging/host.ts +21 -2
- package/supervisor/protocol.ts +74 -26
- package/supervisor/server.ts +16 -8
- package/supervisor/store.ts +476 -57
- package/supervisor/types.ts +19 -13
- package/SKILL.md +0 -427
- package/adapters/computer/chatgpt-target-router.ts +0 -103
- package/adapters/mcp/runtime-gateway/automation-receipt-adapter.ts +0 -87
- package/adapters/mcp/runtime-gateway/work-validation-reconciler.ts +0 -1
- package/adapters/mcp/toolset-selection.ts +0 -41
- package/agents/openai.yaml +0 -4
- package/assets/skill-hooks.json +0 -41
- package/assets/skill-version.json +0 -189
- package/assets/skills/claude-review/SKILL.md +0 -231
- package/assets/skills/codex-review/SKILL.md +0 -103
- package/assets/templates/helpers/check-skill-version.ts +0 -193
- package/scripts/check-skill-version.ts +0 -5
- package/scripts/ensure-codegraph.sh +0 -16
- package/scripts/run-skill-hook.ts +0 -244
- package/scripts/sync-codex-installed-copies.sh +0 -182
- package/src/cli/commands/tools.ts +0 -167
- package/src/cli/mcp/access-mode.ts +0 -2
- package/src/cli/mcp/access-tools.ts +0 -2
- package/src/cli/mcp/audit.ts +0 -2
- package/src/cli/mcp/auth.ts +0 -2
- package/src/cli/mcp/instructions.ts +0 -2
- package/src/cli/mcp/legacy-context.ts +0 -2
- package/src/cli/mcp/legacy-tool-service.ts +0 -2
- package/src/cli/mcp/multi-repository.ts +0 -2
- package/src/cli/mcp/oauth.ts +0 -2
- package/src/cli/mcp/openai-secure-tunnel.ts +0 -2
- package/src/cli/mcp/paths.ts +0 -2
- package/src/cli/mcp/policy.ts +0 -2
- package/src/cli/mcp/post-finalize-work-attribution.ts +0 -2
- package/src/cli/mcp/proxy-env.ts +0 -2
- package/src/cli/mcp/readiness-projection.ts +0 -2
- package/src/cli/mcp/redaction.ts +0 -2
- package/src/cli/mcp/repo.ts +0 -2
- package/src/cli/mcp/repository-tools.ts +0 -2
- package/src/cli/mcp/server.ts +0 -2
- package/src/cli/mcp/setup.ts +0 -2
- package/src/cli/mcp/tool-capability-cache.ts +0 -2
- package/src/cli/mcp/tool-contract.ts +0 -2
- package/src/cli/mcp/tools.ts +0 -2
- package/src/cli/mcp/toolset-names.ts +0 -2
- package/src/cli/mcp/toolset-selection.ts +0 -2
- package/src/cli/mcp/toolset.ts +0 -2
- package/src/cli/mcp/transports/http.ts +0 -2
- package/src/cli/mcp/transports/session-registry.ts +0 -2
- package/src/cli/mcp/transports/stdio.ts +0 -2
- package/src/cli/mcp/types.ts +0 -2
- package/src/cli/mcp/umbrella-tools.ts +0 -2
- package/src/cli/tools/codegraph.ts +0 -695
- package/src/core/adoption/helper-wrapper-plan.ts +0 -159
- package/src/runtime/context/codegraph-cache-boundary.ts +0 -255
- package/src/runtime/context/codegraph-read-provider.ts +0 -611
- package/src/runtime/context/codegraph-sidecar.cjs +0 -248
- package/src/runtime/control-plane/codegraph-cache-retention.ts +0 -164
- package/src/runtime/gateway/mcp/execution-tools.ts +0 -2
- package/src/runtime/gateway/mcp/legacy-ios-tool-adapter.ts +0 -2
- package/src/runtime/gateway/mcp/persisted-check-process.ts +0 -2
- package/src/runtime/gateway/mcp/process-tools.ts +0 -2
- package/src/runtime/gateway/mcp/router.ts +0 -2
- package/src/runtime/gateway/mcp/runtime-tool-definitions.ts +0 -2
- package/src/runtime/gateway/mcp/runtime-tools.ts +0 -2
- package/src/runtime/gateway/mcp/work-validation-reconciler.ts +0 -2
- package/src/runtime/plugins/browser-provider-registry.ts +0 -2
- package/src/runtime/plugins/computer-chatgpt-macos-target.ts +0 -891
|
@@ -76,20 +76,9 @@ const WAZA_RAW_BASE_URL = "https://raw.githubusercontent.com/tw93/Waza/main";
|
|
|
76
76
|
const WAZA_MANAGED_SKILLS = ["think", "hunt", "check", "health"];
|
|
77
77
|
const WAZA_SHARED_RULES = ["anti-patterns.md", "chinese.md", "durable-context.md", "english.md"];
|
|
78
78
|
const CODEX_AUTOMATION_SKILLS = ["health", "check", "mermaid"];
|
|
79
|
-
const CODEGRAPH_PACKAGE = "@colbymchenry/codegraph";
|
|
80
|
-
const CODEGRAPH_GLOBAL_INSTALL_COMMAND = `bun add -g ${CODEGRAPH_PACKAGE} && forge tools configure codegraph --target codex --location global`;
|
|
81
79
|
const GBRAIN_INSTALL_COMMAND = "bun install -g github:garrytan/gbrain";
|
|
82
80
|
const GBRAIN_INSTALL_NOTE =
|
|
83
81
|
"Install from GitHub; npm registry package gbrain is an unrelated GPU library and does not ship this CLI.";
|
|
84
|
-
const CODEGRAPH_MCP_CONFIGURE_COMMAND = "forge tools configure codegraph --target <codex|claude|both> --location global";
|
|
85
|
-
const CODEGRAPH_LOCAL_INSTALL_COMMAND = "bun install";
|
|
86
|
-
const CODEGRAPH_ENSURE_COMMAND = [
|
|
87
|
-
".ai/harness/scripts/ensure-codegraph.sh",
|
|
88
|
-
"scripts/ensure-codegraph.sh",
|
|
89
|
-
].find((relPath) => fs.existsSync(path.join(REPO_ROOT, relPath)));
|
|
90
|
-
const CODEGRAPH_ENSURE_BASH_COMMAND = CODEGRAPH_ENSURE_COMMAND
|
|
91
|
-
? `bash ${CODEGRAPH_ENSURE_COMMAND}`
|
|
92
|
-
: null;
|
|
93
82
|
const WAZA_STAGING_ROOT = path.join(HOME, ".agents");
|
|
94
83
|
const WAZA_STAGING_DIR = path.join(WAZA_STAGING_ROOT, "skills");
|
|
95
84
|
const WAZA_STAGING_RULES_DIR = path.join(WAZA_STAGING_ROOT, "rules");
|
|
@@ -1070,97 +1059,6 @@ function detectGbrain() {
|
|
|
1070
1059
|
};
|
|
1071
1060
|
}
|
|
1072
1061
|
|
|
1073
|
-
function detectCodeGraphMcp(host) {
|
|
1074
|
-
const meta = HOSTS[host];
|
|
1075
|
-
const content = readText(meta.configPath);
|
|
1076
|
-
function claudeEntryResult(entry, source) {
|
|
1077
|
-
if (!entry || typeof entry !== "object") return null;
|
|
1078
|
-
if (entry.alwaysLoad === true) {
|
|
1079
|
-
return {
|
|
1080
|
-
status: "configured",
|
|
1081
|
-
always_load: true,
|
|
1082
|
-
tool_search: "always-load",
|
|
1083
|
-
reason: `${source} contains a codegraph MCP server entry with alwaysLoad=true.`,
|
|
1084
|
-
};
|
|
1085
|
-
}
|
|
1086
|
-
return {
|
|
1087
|
-
status: "deferred",
|
|
1088
|
-
always_load: false,
|
|
1089
|
-
tool_search: "deferred",
|
|
1090
|
-
reason: `${source} contains a codegraph MCP server entry, but alwaysLoad is not true; Claude Code MCP Tool Search may defer CodeGraph tools.`,
|
|
1091
|
-
};
|
|
1092
|
-
}
|
|
1093
|
-
function claudeTextFallback(source, sourcePath) {
|
|
1094
|
-
return {
|
|
1095
|
-
status: "deferred",
|
|
1096
|
-
always_load: false,
|
|
1097
|
-
tool_search: "unknown",
|
|
1098
|
-
reason: `${source} contains a codegraph MCP server entry at ${sourcePath}, but alwaysLoad could not be verified.`,
|
|
1099
|
-
};
|
|
1100
|
-
}
|
|
1101
|
-
|
|
1102
|
-
if (!content) {
|
|
1103
|
-
if (host === "claude") {
|
|
1104
|
-
const claudeRootConfig = path.join(HOME, ".claude.json");
|
|
1105
|
-
const rootJson = readJson(claudeRootConfig);
|
|
1106
|
-
const rootEntry = claudeEntryResult(rootJson?.mcpServers?.codegraph, `Claude root config at ${claudeRootConfig}`);
|
|
1107
|
-
if (rootEntry) return rootEntry;
|
|
1108
|
-
const rootContent = readText(claudeRootConfig);
|
|
1109
|
-
if (/codegraph/i.test(rootContent)) {
|
|
1110
|
-
return claudeTextFallback("Claude root config", claudeRootConfig);
|
|
1111
|
-
}
|
|
1112
|
-
}
|
|
1113
|
-
|
|
1114
|
-
return {
|
|
1115
|
-
status: "missing",
|
|
1116
|
-
reason: `No ${meta.label} config found at ${meta.configPath}.`,
|
|
1117
|
-
};
|
|
1118
|
-
}
|
|
1119
|
-
|
|
1120
|
-
if (host === "codex") {
|
|
1121
|
-
if (/\[mcp_servers\.codegraph\]/.test(content)) {
|
|
1122
|
-
return {
|
|
1123
|
-
status: "configured",
|
|
1124
|
-
reason: "Codex config contains a codegraph MCP server entry.",
|
|
1125
|
-
};
|
|
1126
|
-
}
|
|
1127
|
-
|
|
1128
|
-
return {
|
|
1129
|
-
status: "missing",
|
|
1130
|
-
reason: "Codex config does not contain a codegraph MCP server entry.",
|
|
1131
|
-
};
|
|
1132
|
-
}
|
|
1133
|
-
|
|
1134
|
-
const settingsJson = readJson(meta.configPath);
|
|
1135
|
-
const settingsEntry = claudeEntryResult(settingsJson?.mcpServers?.codegraph, `Claude settings at ${meta.configPath}`);
|
|
1136
|
-
if (settingsEntry) return settingsEntry;
|
|
1137
|
-
if (/"mcpServers"\s*:\s*{[\s\S]*"codegraph"/i.test(content)) {
|
|
1138
|
-
return claudeTextFallback("Claude settings", meta.configPath);
|
|
1139
|
-
}
|
|
1140
|
-
|
|
1141
|
-
const claudeRootConfig = path.join(HOME, ".claude.json");
|
|
1142
|
-
const rootJson = readJson(claudeRootConfig);
|
|
1143
|
-
const rootEntry = claudeEntryResult(rootJson?.mcpServers?.codegraph, `Claude root config at ${claudeRootConfig}`);
|
|
1144
|
-
if (rootEntry) return rootEntry;
|
|
1145
|
-
const rootContent = readText(claudeRootConfig);
|
|
1146
|
-
if (/"mcpServers"\s*:\s*{[\s\S]*"codegraph"/i.test(rootContent)) {
|
|
1147
|
-
return claudeTextFallback("Claude root config", claudeRootConfig);
|
|
1148
|
-
}
|
|
1149
|
-
|
|
1150
|
-
return {
|
|
1151
|
-
status: "missing",
|
|
1152
|
-
reason: "Claude config does not contain a codegraph MCP server entry.",
|
|
1153
|
-
};
|
|
1154
|
-
}
|
|
1155
|
-
|
|
1156
|
-
function parseCodeGraphProjectStatus(output) {
|
|
1157
|
-
if (/Not initialized/i.test(output)) return "not-initialized";
|
|
1158
|
-
if (/Index is up to date/i.test(output)) return "up-to-date";
|
|
1159
|
-
if (/Pending Changes/i.test(output) || /Run "codegraph sync/i.test(output)) return "stale";
|
|
1160
|
-
if (/CodeGraph Status/i.test(output)) return "unknown";
|
|
1161
|
-
return "unavailable";
|
|
1162
|
-
}
|
|
1163
|
-
|
|
1164
1062
|
function resolvePathCommand(command) {
|
|
1165
1063
|
const pathValue = process.env.PATH || "";
|
|
1166
1064
|
for (const dir of pathValue.split(path.delimiter)) {
|
|
@@ -1171,207 +1069,6 @@ function resolvePathCommand(command) {
|
|
|
1171
1069
|
return null;
|
|
1172
1070
|
}
|
|
1173
1071
|
|
|
1174
|
-
function codeGraphPackageDeclared() {
|
|
1175
|
-
const pkg = readJson(path.join(REPO_ROOT, "package.json"));
|
|
1176
|
-
if (!pkg || typeof pkg !== "object") return false;
|
|
1177
|
-
return Boolean(
|
|
1178
|
-
pkg.devDependencies?.[CODEGRAPH_PACKAGE] ||
|
|
1179
|
-
pkg.dependencies?.[CODEGRAPH_PACKAGE] ||
|
|
1180
|
-
pkg.optionalDependencies?.[CODEGRAPH_PACKAGE]
|
|
1181
|
-
);
|
|
1182
|
-
}
|
|
1183
|
-
|
|
1184
|
-
function codeGraphPlatformPackageName() {
|
|
1185
|
-
return `${CODEGRAPH_PACKAGE}-${process.platform}-${process.arch}`;
|
|
1186
|
-
}
|
|
1187
|
-
|
|
1188
|
-
function codeGraphPlatformBundleBin() {
|
|
1189
|
-
if (process.platform === "win32") return null;
|
|
1190
|
-
return path.join(REPO_ROOT, "node_modules", codeGraphPlatformPackageName(), "bin", "codegraph");
|
|
1191
|
-
}
|
|
1192
|
-
|
|
1193
|
-
function resolveCodeGraphBinary() {
|
|
1194
|
-
const allowRepoLocal = process.env.AGENTIC_DEV_CODEGRAPH_ALLOW_REPO_LOCAL !== "0";
|
|
1195
|
-
const allowGlobal = process.env.AGENTIC_DEV_CODEGRAPH_ALLOW_GLOBAL !== "0";
|
|
1196
|
-
const localCandidates = [];
|
|
1197
|
-
const localOverride = process.env.AGENTIC_DEV_CODEGRAPH_LOCAL_BIN;
|
|
1198
|
-
const globalOverride = process.env.AGENTIC_DEV_CODEGRAPH_GLOBAL_BIN;
|
|
1199
|
-
|
|
1200
|
-
if (localOverride) localCandidates.push(localOverride);
|
|
1201
|
-
if (allowRepoLocal) {
|
|
1202
|
-
localCandidates.push(codeGraphPlatformBundleBin());
|
|
1203
|
-
localCandidates.push(path.join(REPO_ROOT, "node_modules", ".bin", "codegraph"));
|
|
1204
|
-
}
|
|
1205
|
-
|
|
1206
|
-
let localBinPath = null;
|
|
1207
|
-
for (const candidate of localCandidates) {
|
|
1208
|
-
if (candidate && fileIsExecutable(candidate)) {
|
|
1209
|
-
localBinPath = candidate;
|
|
1210
|
-
break;
|
|
1211
|
-
}
|
|
1212
|
-
}
|
|
1213
|
-
|
|
1214
|
-
let globalBinPath = null;
|
|
1215
|
-
if (allowGlobal) {
|
|
1216
|
-
if (globalOverride && fileIsExecutable(globalOverride)) {
|
|
1217
|
-
globalBinPath = globalOverride;
|
|
1218
|
-
} else if (!globalOverride) {
|
|
1219
|
-
globalBinPath = resolvePathCommand("codegraph");
|
|
1220
|
-
}
|
|
1221
|
-
}
|
|
1222
|
-
|
|
1223
|
-
if (localBinPath) {
|
|
1224
|
-
return {
|
|
1225
|
-
source: "local",
|
|
1226
|
-
bin_path: localBinPath,
|
|
1227
|
-
local_bin_path: localBinPath,
|
|
1228
|
-
global_bin_path: globalBinPath,
|
|
1229
|
-
global_fallback_used: false,
|
|
1230
|
-
};
|
|
1231
|
-
}
|
|
1232
|
-
|
|
1233
|
-
if (globalBinPath) {
|
|
1234
|
-
return {
|
|
1235
|
-
source: "global",
|
|
1236
|
-
bin_path: globalBinPath,
|
|
1237
|
-
local_bin_path: null,
|
|
1238
|
-
global_bin_path: globalBinPath,
|
|
1239
|
-
global_fallback_used: true,
|
|
1240
|
-
};
|
|
1241
|
-
}
|
|
1242
|
-
|
|
1243
|
-
return {
|
|
1244
|
-
source: "missing",
|
|
1245
|
-
bin_path: null,
|
|
1246
|
-
local_bin_path: null,
|
|
1247
|
-
global_bin_path: null,
|
|
1248
|
-
global_fallback_used: false,
|
|
1249
|
-
};
|
|
1250
|
-
}
|
|
1251
|
-
|
|
1252
|
-
function codeGraphVersion(binPath) {
|
|
1253
|
-
if (!binPath) return null;
|
|
1254
|
-
const result = run(binPath, ["--version"], { timeoutMs: 1000 });
|
|
1255
|
-
if (result.ok) return result.stdout.trim() || null;
|
|
1256
|
-
if (result.timed_out) {
|
|
1257
|
-
const retry = run(binPath, ["--version"], { timeoutMs: 1000 });
|
|
1258
|
-
if (retry.ok) return retry.stdout.trim() || null;
|
|
1259
|
-
}
|
|
1260
|
-
return null;
|
|
1261
|
-
}
|
|
1262
|
-
|
|
1263
|
-
function detectCodeGraph() {
|
|
1264
|
-
const resolution = resolveCodeGraphBinary();
|
|
1265
|
-
const cliPresent = Boolean(resolution.bin_path);
|
|
1266
|
-
const version = codeGraphVersion(resolution.bin_path);
|
|
1267
|
-
const globalVersion = resolution.global_bin_path && resolution.global_bin_path !== resolution.bin_path
|
|
1268
|
-
? codeGraphVersion(resolution.global_bin_path)
|
|
1269
|
-
: resolution.source === "global"
|
|
1270
|
-
? version
|
|
1271
|
-
: null;
|
|
1272
|
-
const localVersion = resolution.source === "local" ? version : null;
|
|
1273
|
-
const packageDeclared = codeGraphPackageDeclared();
|
|
1274
|
-
const mcpHosts = {};
|
|
1275
|
-
|
|
1276
|
-
for (const host of SELECTED_HOSTS) {
|
|
1277
|
-
mcpHosts[host] = {
|
|
1278
|
-
label: HOSTS[host].label,
|
|
1279
|
-
...detectCodeGraphMcp(host),
|
|
1280
|
-
};
|
|
1281
|
-
}
|
|
1282
|
-
|
|
1283
|
-
const selectedMcpConfigured = SELECTED_HOSTS.every((host) => mcpHosts[host]?.status === "configured");
|
|
1284
|
-
const statusResult = cliPresent ? run(resolution.bin_path, ["status", "."], { timeoutMs: 1500 }) : null;
|
|
1285
|
-
const statusOutput = `${statusResult?.stdout || ""}\n${statusResult?.stderr || ""}`;
|
|
1286
|
-
const projectIndexStatus = cliPresent ? parseCodeGraphProjectStatus(statusOutput) : "unavailable";
|
|
1287
|
-
const indexInitialized = fs.existsSync(path.join(REPO_ROOT, ".codegraph"))
|
|
1288
|
-
|| ["up-to-date", "stale", "unknown"].includes(projectIndexStatus);
|
|
1289
|
-
const updateResult = cliPresent && checkUpdates
|
|
1290
|
-
? run("npm", ["view", CODEGRAPH_PACKAGE, "version", "--json"], { timeoutMs: 3000 })
|
|
1291
|
-
: null;
|
|
1292
|
-
const latestVersion = updateResult?.ok ? (parseJson(updateResult.stdout) || updateResult.stdout.trim().replace(/^"|"$/g, "")) : null;
|
|
1293
|
-
const updateStatus = !checkUpdates
|
|
1294
|
-
? "not-checked"
|
|
1295
|
-
: latestVersion && version
|
|
1296
|
-
? (String(latestVersion) === String(version) ? "up-to-date" : "update-available")
|
|
1297
|
-
: "unknown";
|
|
1298
|
-
const localDependencyMissing = packageDeclared && resolution.source === "global";
|
|
1299
|
-
const status = !cliPresent
|
|
1300
|
-
? "missing"
|
|
1301
|
-
: localDependencyMissing || !selectedMcpConfigured || projectIndexStatus === "not-initialized" || projectIndexStatus === "unavailable"
|
|
1302
|
-
? "partial"
|
|
1303
|
-
: projectIndexStatus === "stale" || projectIndexStatus === "unknown"
|
|
1304
|
-
? "warning"
|
|
1305
|
-
: "present";
|
|
1306
|
-
|
|
1307
|
-
return {
|
|
1308
|
-
name: "codegraph",
|
|
1309
|
-
status,
|
|
1310
|
-
reason: !cliPresent
|
|
1311
|
-
? "CodeGraph CLI is not installed."
|
|
1312
|
-
: localDependencyMissing
|
|
1313
|
-
? "CodeGraph global fallback is present, but this repo declares a local dev dependency that is not installed."
|
|
1314
|
-
: !selectedMcpConfigured
|
|
1315
|
-
? "CodeGraph CLI is present, but one or more selected host MCP configs are missing or deferred."
|
|
1316
|
-
: projectIndexStatus === "not-initialized"
|
|
1317
|
-
? "CodeGraph CLI and MCP are present, but this repo has not been indexed."
|
|
1318
|
-
: projectIndexStatus === "unavailable"
|
|
1319
|
-
? "CodeGraph CLI and MCP are present, but project index status could not be read."
|
|
1320
|
-
: projectIndexStatus === "stale"
|
|
1321
|
-
? "CodeGraph is configured, but this repo index has pending changes."
|
|
1322
|
-
: projectIndexStatus === "unknown"
|
|
1323
|
-
? "CodeGraph is configured, but this repo index status is unknown."
|
|
1324
|
-
: "CodeGraph CLI, selected host MCP config, and project index are ready.",
|
|
1325
|
-
package: CODEGRAPH_PACKAGE,
|
|
1326
|
-
primary_host: "codex",
|
|
1327
|
-
cli_present: cliPresent,
|
|
1328
|
-
source: resolution.source,
|
|
1329
|
-
bin_path: resolution.bin_path,
|
|
1330
|
-
local_bin_path: resolution.local_bin_path,
|
|
1331
|
-
global_bin_path: resolution.global_bin_path,
|
|
1332
|
-
global_fallback_used: resolution.global_fallback_used,
|
|
1333
|
-
version,
|
|
1334
|
-
local_version: localVersion,
|
|
1335
|
-
global_version: globalVersion,
|
|
1336
|
-
dependency_declared: packageDeclared,
|
|
1337
|
-
drift: localVersion && globalVersion && localVersion !== globalVersion
|
|
1338
|
-
? { local: localVersion, global: globalVersion, using: resolution.source }
|
|
1339
|
-
: null,
|
|
1340
|
-
latest_version: latestVersion,
|
|
1341
|
-
update_status: updateStatus,
|
|
1342
|
-
update_reason: !checkUpdates
|
|
1343
|
-
? "Update checks were skipped."
|
|
1344
|
-
: updateResult?.timed_out
|
|
1345
|
-
? "CodeGraph npm version check timed out."
|
|
1346
|
-
: latestVersion && version
|
|
1347
|
-
? (String(latestVersion) === String(version) ? "Local CodeGraph matches npm latest." : "npm reports a newer CodeGraph version.")
|
|
1348
|
-
: "CodeGraph update status is unknown.",
|
|
1349
|
-
mcp_hosts: mcpHosts,
|
|
1350
|
-
project_index: {
|
|
1351
|
-
status: projectIndexStatus,
|
|
1352
|
-
initialized: indexInitialized,
|
|
1353
|
-
path: path.join(REPO_ROOT, ".codegraph"),
|
|
1354
|
-
command: "codegraph status .",
|
|
1355
|
-
},
|
|
1356
|
-
install_command: packageDeclared ? CODEGRAPH_LOCAL_INSTALL_COMMAND : CODEGRAPH_GLOBAL_INSTALL_COMMAND,
|
|
1357
|
-
ensure_command: packageDeclared ? CODEGRAPH_ENSURE_BASH_COMMAND : null,
|
|
1358
|
-
mcp_install_command: CODEGRAPH_MCP_CONFIGURE_COMMAND,
|
|
1359
|
-
init_command: packageDeclared && CODEGRAPH_ENSURE_BASH_COMMAND ? `${CODEGRAPH_ENSURE_BASH_COMMAND} --init` : "codegraph init -i .",
|
|
1360
|
-
sync_command: packageDeclared && CODEGRAPH_ENSURE_BASH_COMMAND ? `${CODEGRAPH_ENSURE_BASH_COMMAND} --sync` : "codegraph sync .",
|
|
1361
|
-
upgrade_command: packageDeclared && CODEGRAPH_ENSURE_BASH_COMMAND ? `bun update @colbymchenry/codegraph && ${CODEGRAPH_ENSURE_BASH_COMMAND} --sync` : `bun add -g ${CODEGRAPH_PACKAGE}@latest && codegraph sync .`,
|
|
1362
|
-
uninstall_command: "codegraph uninstall --target codex --location global --yes",
|
|
1363
|
-
readiness: {
|
|
1364
|
-
required_for: "codex-agent-code-navigation",
|
|
1365
|
-
hook_policy: "do-not-block-hooks",
|
|
1366
|
-
user_setup: "one-terminal-command-or-authorized-agent-action",
|
|
1367
|
-
},
|
|
1368
|
-
impact: {
|
|
1369
|
-
code_navigation: status === "present" ? "full" : status === "warning" ? "stale-index" : "missing",
|
|
1370
|
-
hook_correctness: "unaffected",
|
|
1371
|
-
},
|
|
1372
|
-
};
|
|
1373
|
-
}
|
|
1374
|
-
|
|
1375
1072
|
const wazaReport = detectWaza();
|
|
1376
1073
|
const report = {
|
|
1377
1074
|
generated_at: new Date().toISOString(),
|
|
@@ -1384,14 +1081,10 @@ const report = {
|
|
|
1384
1081
|
waza: wazaReport,
|
|
1385
1082
|
codex_automation_profile: detectCodexAutomationProfile(),
|
|
1386
1083
|
gbrain: detectGbrain(),
|
|
1387
|
-
codegraph: detectCodeGraph(),
|
|
1388
1084
|
},
|
|
1389
1085
|
};
|
|
1390
1086
|
|
|
1391
1087
|
const strictFailures = [];
|
|
1392
|
-
if (strictReadiness && ["missing", "partial"].includes(report.tools.codegraph.status)) {
|
|
1393
|
-
strictFailures.push(`CodeGraph readiness is ${report.tools.codegraph.status}: ${report.tools.codegraph.reason}`);
|
|
1394
|
-
}
|
|
1395
1088
|
|
|
1396
1089
|
function printText(result) {
|
|
1397
1090
|
console.log("External Tooling Report");
|
|
@@ -1496,26 +1189,7 @@ function printText(result) {
|
|
|
1496
1189
|
console.log(` - Manual sync: ${gbrain.sync_command}`);
|
|
1497
1190
|
console.log("");
|
|
1498
1191
|
|
|
1499
|
-
|
|
1500
|
-
console.log(`CodeGraph [${codegraph.status}]`);
|
|
1501
|
-
console.log(` - CLI: ${codegraph.cli_present ? `present${codegraph.version ? ` (v${codegraph.version})` : ""} via ${codegraph.source}` : "missing"}`);
|
|
1502
|
-
if (codegraph.drift) {
|
|
1503
|
-
console.log(` - Drift: local=${codegraph.drift.local}, global=${codegraph.drift.global}, using=${codegraph.drift.using}`);
|
|
1504
|
-
}
|
|
1505
|
-
for (const host of SELECTED_HOSTS) {
|
|
1506
|
-
const entry = codegraph.mcp_hosts[host];
|
|
1507
|
-
const suffix = entry.tool_search ? ` (${entry.tool_search})` : "";
|
|
1508
|
-
console.log(` - ${entry.label} MCP: ${entry.status}${suffix}`);
|
|
1509
|
-
}
|
|
1510
|
-
console.log(` - Project index: ${codegraph.project_index.status}`);
|
|
1511
|
-
console.log(` - Updates: ${codegraph.update_status} (${codegraph.update_reason})`);
|
|
1512
|
-
console.log(` - Impact: code-navigation=${codegraph.impact.code_navigation}, hooks=${codegraph.impact.hook_correctness}`);
|
|
1513
|
-
console.log(` - Install deps: ${codegraph.install_command}`);
|
|
1514
|
-
if (codegraph.ensure_command) {
|
|
1515
|
-
console.log(` - Ensure: ${codegraph.ensure_command}`);
|
|
1516
|
-
}
|
|
1517
|
-
console.log(` - Init index: ${codegraph.init_command}`);
|
|
1518
|
-
console.log(` - Sync index: ${codegraph.sync_command}`);
|
|
1192
|
+
|
|
1519
1193
|
}
|
|
1520
1194
|
|
|
1521
1195
|
if (jsonOutput) {
|
|
@@ -670,7 +670,7 @@ check_helper_runtime_files() {
|
|
|
670
670
|
refresh-current-status.sh prepare-handoff.sh verify-contract.sh summarize-failures.sh
|
|
671
671
|
verify-sprint.sh sprint-backlog.sh check-task-sync.sh check-deploy-sql-order.sh
|
|
672
672
|
check-architecture-sync.sh check-agent-tooling.sh check-context-files.sh
|
|
673
|
-
check-brain-manifest.sh sync-brain-docs.sh
|
|
673
|
+
check-brain-manifest.sh sync-brain-docs.sh
|
|
674
674
|
select-agent-context-blocks.sh ensure-task-workflow.sh check-task-workflow.sh
|
|
675
675
|
switch-plan.sh workflow-contract.ts
|
|
676
676
|
inspect-project-state.ts migrate-workflow-docs.ts migrate-project-template.sh
|
|
@@ -1012,20 +1012,6 @@ ARCHITECTURE_INDEX_EOF
|
|
|
1012
1012
|
},
|
|
1013
1013
|
"gbrain": {
|
|
1014
1014
|
"mcp": "candidate-disabled"
|
|
1015
|
-
},
|
|
1016
|
-
"codegraph": {
|
|
1017
|
-
"package": "@colbymchenry/codegraph",
|
|
1018
|
-
"primary_host": "both",
|
|
1019
|
-
"install_mode": "target-aware-mcp",
|
|
1020
|
-
"codex_config_path": "~/.codex/config.toml",
|
|
1021
|
-
"claude_config_path": "~/.claude.json",
|
|
1022
|
-
"index_dir": ".codegraph",
|
|
1023
|
-
"readiness": "forge-bundled-backend; host-mcp-optional",
|
|
1024
|
-
"hook_policy": "do-not-block-hooks",
|
|
1025
|
-
"install_command": "bun add -g @colbymchenry/codegraph && forge tools configure codegraph --target codex --location global",
|
|
1026
|
-
"project_init_command": "codegraph init -i .",
|
|
1027
|
-
"sync_command": "codegraph sync .",
|
|
1028
|
-
"vendoring_policy": "do-not-add-package-dependency"
|
|
1029
1015
|
}
|
|
1030
1016
|
},
|
|
1031
1017
|
"agentic_development": {
|
|
@@ -15,7 +15,7 @@ run_source_root() {
|
|
|
15
15
|
echo "[migrate] bun is required to run Forge from source: $root" >&2
|
|
16
16
|
exit 1
|
|
17
17
|
}
|
|
18
|
-
exec bun "$root/src/cli/index.ts" adopt "$@" --no-
|
|
18
|
+
exec bun "$root/src/cli/index.ts" adopt "$@" --no-verify
|
|
19
19
|
}
|
|
20
20
|
|
|
21
21
|
run_source_root "$SELF_SOURCE_ROOT" "$@"
|
|
@@ -24,7 +24,7 @@ if [[ -n "$SOURCE_ROOT" ]]; then
|
|
|
24
24
|
fi
|
|
25
25
|
|
|
26
26
|
if command -v forge >/dev/null 2>&1; then
|
|
27
|
-
exec forge adopt "$@" --no-
|
|
27
|
+
exec forge adopt "$@" --no-verify
|
|
28
28
|
fi
|
|
29
29
|
|
|
30
30
|
echo "[migrate] Missing Forge CLI; set FORGE_SOURCE_ROOT to a Forge source checkout." >&2
|
|
@@ -107,7 +107,6 @@
|
|
|
107
107
|
"check-context-files.sh",
|
|
108
108
|
"check-brain-manifest.sh",
|
|
109
109
|
"sync-brain-docs.sh",
|
|
110
|
-
"check-skill-version.ts",
|
|
111
110
|
"select-agent-context-blocks.sh",
|
|
112
111
|
"ensure-task-workflow.sh",
|
|
113
112
|
"check-task-workflow.sh",
|
|
@@ -403,7 +402,6 @@
|
|
|
403
402
|
"scripts/check-brain-manifest.sh",
|
|
404
403
|
"scripts/check-context-files.sh",
|
|
405
404
|
"scripts/check-deploy-sql-order.sh",
|
|
406
|
-
"scripts/check-skill-version.ts",
|
|
407
405
|
"scripts/check-task-sync.sh",
|
|
408
406
|
"scripts/check-task-workflow.sh",
|
|
409
407
|
"scripts/harness-trace-grade.sh",
|
package/docs/README.md
CHANGED
|
@@ -2,7 +2,9 @@
|
|
|
2
2
|
|
|
3
3
|
> Maintained documentation for the current Forge product and runtime. Executable behavior and [`architecture/CURRENT.md`](architecture/CURRENT.md) are authoritative for implementation facts and architecture contracts; historical notes are context, not active contracts.
|
|
4
4
|
|
|
5
|
-
[中文文档中心](README.zh-CN.md) · [GitHub](https://github.com/moretea-labs/forge) · [Releases](https://github.com/moretea-labs/forge/releases) · [Support](../SUPPORT.md)
|
|
5
|
+
[Public documentation site](https://moretea-labs.github.io/forge/) · [中文文档中心](README.zh-CN.md) · [GitHub Wiki](https://github.com/moretea-labs/forge/wiki) · [GitHub](https://github.com/moretea-labs/forge) · [Releases](https://github.com/moretea-labs/forge/releases) · [Support](../SUPPORT.md)
|
|
6
|
+
|
|
7
|
+
Forge is a local-first ChatGPT MCP runtime for permission-scoped computer use, development, browser actions, and connected services. Current stable: [v1.8.1](https://github.com/moretea-labs/forge/releases/tag/v1.8.1) on npm `latest`. **The versioned repository docs are authoritative; GitHub Wiki mirrors `docs/wiki/`.**
|
|
6
8
|
|
|
7
9
|
## Start here
|
|
8
10
|
|
|
@@ -38,9 +40,10 @@ Forge is Direct-first: investigation does not create durable Work by itself, and
|
|
|
38
40
|
- [Core Concepts](wiki/Core-Concepts.md)
|
|
39
41
|
|
|
40
42
|
### Integrate
|
|
43
|
+
- [Computer and plugin setup](wiki/Computer-and-Plugins.md)
|
|
41
44
|
- [Plugin management](forge-plugin-management.md)
|
|
42
45
|
- [Browser provider](operations/controller-browser-plugin.md)
|
|
43
|
-
- [Desktop provider](
|
|
46
|
+
- [Computer / Desktop provider](wiki/Computer-and-Plugins.md)
|
|
44
47
|
- [Local system assistant](operations/local-system-assistant.md)
|
|
45
48
|
- [iOS development assistant](forge-ios-development-assistant.md)
|
|
46
49
|
|