github TypeScript analyzed dbaea5e

Pythoughts-labs/claude-architect

github

Claude Code delegates coding to isolated CLI agents it doesn't trust (Codex, OpenCode, Pi, Pythinker), freezes what they produce, verifies it independently, and merges only what a human approves.

maintainer
Pythoughts-labs
licence
MIT
first seen
2026-07-17
last seen
2026-08-08
releases · 30d
0
short id

Drift inferred · capture-to-capture

No drift recorded — single capability capture; advisories appear once its surface changes.

capabilities 10 tools
transport stdio · http counts 10 tools · 0 res · 0 prompts permission surface via code analysis

tools

  • autopilotResume
  • autopilotStart
  • autopilotStatus
  • decideCandidate
  • delegate
  • delegatePipeline
  • doctor
  • integrateCandidate
  • reviewCandidate
  • validateDelegationSpec
skills & danger signals github-tarball
code evidence vv0.44.0 · github-tarball
evidence-backed findings quoted directly from the published source artifact — not inferred

code files: 233

filesystem 107

  • fs (weak) PyModel-claude-architect-dbaea5e/scripts/verify-native-helpers.mjs :2 import { readFile } from "node:fs/promises";
  • fs PyModel-claude-architect-dbaea5e/src/autopilot/branch-manager.ts :2 import { constants } from "node:fs";
  • fs PyModel-claude-architect-dbaea5e/src/autopilot/final-branch-reviewer.ts :2 import { constants } from "node:fs";
  • fs PyModel-claude-architect-dbaea5e/src/autopilot/workflow-store.ts :2 import { constants, type Stats } from "node:fs";
  • fs PyModel-claude-architect-dbaea5e/src/git/candidate-tree.ts :1 import { lstat, mkdtemp, rm } from "node:fs/promises";
  • fs PyModel-claude-architect-dbaea5e/src/git/repo-preconditions.ts :1 import { access, lstat, opendir, readlink, realpath } from "node:fs/promises";
  • fs PyModel-claude-architect-dbaea5e/src/git/worktree-registration.ts :1 import { realpath } from "node:fs/promises";
  • fs PyModel-claude-architect-dbaea5e/src/mcp/allowlist-sufficiency.ts :1 import { readFile } from "node:fs/promises";
  • fs PyModel-claude-architect-dbaea5e/src/mcp/doctor.ts :2 import { constants } from "node:fs";
  • fs PyModel-claude-architect-dbaea5e/src/mcp/live-bundle.ts :2 import { readFile } from "node:fs/promises";
  • fs PyModel-claude-architect-dbaea5e/src/pipeline/git-writable-roots.ts :1 import type { Stats } from "node:fs";
  • fs PyModel-claude-architect-dbaea5e/src/pipeline/role-prompts.ts :2 import { readFileSync } from "node:fs";
show 28 more
  • fs PyModel-claude-architect-dbaea5e/src/pipeline/role-runner.ts :1 import { rm } from "node:fs/promises";
  • fs PyModel-claude-architect-dbaea5e/src/pipeline/slice-composer.ts :1 import { mkdtemp, rm } from "node:fs/promises";
  • fs PyModel-claude-architect-dbaea5e/src/platform/bound-directory-cleanup.ts :1 import { constants } from "node:fs";
  • fs PyModel-claude-architect-dbaea5e/src/platform/durable-directory.ts :1 import { constants } from "node:fs";
  • fs PyModel-claude-architect-dbaea5e/src/platform/posix-platform-services.ts :3 import { constants, promises as fs } from "node:fs";
  • fs (weak) PyModel-claude-architect-dbaea5e/src/platform/sandbox/seatbelt.ts :1 import { realpathSync } from "node:fs";
  • fs PyModel-claude-architect-dbaea5e/src/platform/windows-filesystem-helper.ts :1 import { access, lstat, realpath } from "node:fs/promises";
  • fs PyModel-claude-architect-dbaea5e/src/platform/windows-platform-services.ts :3 import { promises as fs } from "node:fs";
  • fs PyModel-claude-architect-dbaea5e/src/producers/agy-adapter.ts :1 import { existsSync } from "node:fs";
  • fs PyModel-claude-architect-dbaea5e/src/producers/codex-adapter.ts :2 import { existsSync, realpathSync } from "node:fs";
  • fs PyModel-claude-architect-dbaea5e/src/producers/opencode-adapter.ts :1 import { existsSync } from "node:fs";
  • fs PyModel-claude-architect-dbaea5e/src/producers/pi-adapter.ts :1 import { existsSync } from "node:fs";
  • fs PyModel-claude-architect-dbaea5e/src/producers/plain-text.ts :1 import { open } from "node:fs/promises";
  • fs PyModel-claude-architect-dbaea5e/src/producers/producer-adapter.ts :1 import { readFileSync } from "node:fs";
  • fs PyModel-claude-architect-dbaea5e/src/producers/pythinker-adapter.ts :1 import { existsSync } from "node:fs";
  • fs PyModel-claude-architect-dbaea5e/src/producers/skill-bootstrap.ts :1 import { existsSync } from "node:fs";
  • fs PyModel-claude-architect-dbaea5e/src/runtime/artifact-store.ts :2 import { constants } from "node:fs";
  • fs PyModel-claude-architect-dbaea5e/src/runtime/attempt-runtime.ts :2 import { rm } from "node:fs/promises";
  • fs PyModel-claude-architect-dbaea5e/src/runtime/recovery-manager.ts :2 import { constants, type Dirent } from "node:fs";
  • fs PyModel-claude-architect-dbaea5e/src/runtime/reproducibility.ts :1 import { readFile } from "node:fs/promises";
  • fs PyModel-claude-architect-dbaea5e/src/runtime/run-start.ts :2 import { constants } from "node:fs";
  • fs PyModel-claude-architect-dbaea5e/src/runtime/worktree-manager.ts :2 import { lstat, mkdir, readdir, realpath, rename, rmdir } from "node:fs/promises";
  • fs PyModel-claude-architect-dbaea5e/src/runtime/worktree-removal-manifest.ts :2 import { constants } from "node:fs";
  • fs PyModel-claude-architect-dbaea5e/src/ship/github-cli-adapter.ts :1 import { chmod, rm } from "node:fs/promises";
  • fs PyModel-claude-architect-dbaea5e/src/util/stable-file.ts :1 import { constants } from "node:fs";
  • fs PyModel-claude-architect-dbaea5e/src/verify/baseline-verifier.ts :2 import { readFile } from "node:fs/promises";
  • fs PyModel-claude-architect-dbaea5e/src/verify/dependency-link.ts :2 import { access, mkdir, mkdtemp, readFile, rm, writeFile } from "node:fs/promises";
  • fs PyModel-claude-architect-dbaea5e/src/verify/project-verifier.ts :1 import { realpath } from "node:fs/promises";

67 more not shown — this panel samples each group; the count above is the real total.

shell / exec 33

  • shell PyModel-claude-architect-dbaea5e/runtime/bootstrap.mjs :5 import { spawn, spawnSync } from "node:child_process";
  • shell PyModel-claude-architect-dbaea5e/runtime/watchdog.mjs :4 import { spawn } from "node:child_process";
  • shell PyModel-claude-architect-dbaea5e/src/platform/bound-directory-cleanup.ts :42 const { execFileSync } = require("node:child_process");
  • shell PyModel-claude-architect-dbaea5e/src/platform/posix-platform-services.ts :1 import { spawn, execFile } from "node:child_process";
  • shell PyModel-claude-architect-dbaea5e/src/platform/windows-platform-services.ts :1 import { execFile, spawn, type ChildProcess } from "node:child_process";
  • shell PyModel-claude-architect-dbaea5e/src/producers/codex-adapter.ts :1 import { execFileSync } from "node:child_process";
  • shell PyModel-claude-architect-dbaea5e/src/verify/dependency-link.ts :1 import { execFile } from "node:child_process";
  • shell (weak) PyModel-claude-architect-dbaea5e/tests/runtime/agy-adapter.test.ts :1 import { execFile } from "node:child_process";
  • shell (weak) PyModel-claude-architect-dbaea5e/tests/runtime/artifact-store.test.ts :1 import { execFile } from "node:child_process";
  • shell (weak) PyModel-claude-architect-dbaea5e/tests/runtime/autopilot/workflow-store.test.ts :12 import { spawn } from "node:child_process";
  • shell (weak) PyModel-claude-architect-dbaea5e/tests/runtime/bootstrap.smoke.test.ts :1 import { spawn, spawnSync, type ChildProcess } from "node:child_process";
  • shell (weak) PyModel-claude-architect-dbaea5e/tests/runtime/codex-adapter.test.ts :1 import { execFile } from "node:child_process";
show 21 more
  • shell (weak) PyModel-claude-architect-dbaea5e/tests/runtime/durable-directory.test.ts :1 import { execFile } from "node:child_process";
  • shell (weak) PyModel-claude-architect-dbaea5e/tests/runtime/e2e-pipeline.test.ts :90 'const { spawnSync } = require("node:child_process");',
  • shell (weak) PyModel-claude-architect-dbaea5e/tests/runtime/git-exec.test.ts :1 import { execFile } from "node:child_process";
  • shell (weak) PyModel-claude-architect-dbaea5e/tests/runtime/git-read-tools.test.ts :1 import { execFile } from "node:child_process";
  • shell (weak) PyModel-claude-architect-dbaea5e/tests/runtime/handshake.smoke.test.ts :1 import { spawn, type ChildProcessWithoutNullStreams } from "node:child_process";
  • shell (weak) PyModel-claude-architect-dbaea5e/tests/runtime/lock-contention.test.ts :2 import { execFile } from "node:child_process";
  • shell (weak) PyModel-claude-architect-dbaea5e/tests/runtime/opencode-adapter.test.ts :1 import { execFile } from "node:child_process";
  • shell (weak) PyModel-claude-architect-dbaea5e/tests/runtime/pi-adapter.test.ts :1 import { execFile } from "node:child_process";
  • shell (weak) PyModel-claude-architect-dbaea5e/tests/runtime/posix-platform-services.test.ts :1 import { execFile } from "node:child_process";
  • shell (weak) PyModel-claude-architect-dbaea5e/tests/runtime/pre-push-hook.test.ts :1 import { execFile } from "node:child_process";
  • shell (weak) PyModel-claude-architect-dbaea5e/tests/runtime/process-token.test.ts :1 import { spawn } from "node:child_process";
  • shell (weak) PyModel-claude-architect-dbaea5e/tests/runtime/producer-preflight.test.ts :1 import { execFile } from "node:child_process";
  • shell (weak) PyModel-claude-architect-dbaea5e/tests/runtime/project-verifier.test.ts :244 "require('node:child_process').execFileSync('git', ['update-index', '--skip-worktree', 'a.txt']); require('node:fs').writeFileSync('a.txt', 'hidden change\\n')",
  • shell (weak) PyModel-claude-architect-dbaea5e/tests/runtime/pythinker-adapter.test.ts :1 import { execFile } from "node:child_process";
  • shell (weak) PyModel-claude-architect-dbaea5e/tests/runtime/run-status.test.ts :2 import { execFile } from "node:child_process";
  • shell (weak) PyModel-claude-architect-dbaea5e/tests/runtime/stable-file.test.ts :1 import { execFile } from "node:child_process";
  • shell (weak) PyModel-claude-architect-dbaea5e/tests/runtime/tools.test.ts :1 import { execFile } from "node:child_process";
  • shell (weak) PyModel-claude-architect-dbaea5e/tests/runtime/watchdog.test.ts :2 import { spawn, spawnSync } from "node:child_process";
  • shell (weak) PyModel-claude-architect-dbaea5e/tests/runtime/windows-filesystem-helper.test.ts :1 import { execFile, spawn, type ChildProcess } from "node:child_process";
  • shell (weak) PyModel-claude-architect-dbaea5e/tests/runtime/windows-job-kill.test.ts :1 import { execFile } from "node:child_process";
  • shell (weak) PyModel-claude-architect-dbaea5e/tests/runtime/worktree-manager.test.ts :1 import { execFile } from "node:child_process";

network 2

  • net PyModel-claude-architect-dbaea5e/src/autopilot/branch-manager.ts :35 fetch(
  • net (weak) PyModel-claude-architect-dbaea5e/tests/runtime/autopilot/autopilot-adversarial.test.ts :842 async fetch(cwd, remoteUrl, sourceRef, destinationRef) {

secrets 5

  • secrets (weak) PyModel-claude-architect-dbaea5e/tests/runtime/attempt-runtime.test.ts :313 previousAttemptToken = process.env.ATTEMPT_API_TOKEN;
  • secrets (weak) PyModel-claude-architect-dbaea5e/tests/runtime/environment-policy.test.ts :154 process.env.ENTERPRISE_CREDENTIAL = "host-secret-without-known-prefix";
  • secrets (weak) PyModel-claude-architect-dbaea5e/tests/runtime/project-verifier.test.ts :530 args: ["-e", "process.stdout.write(process.env.VERIFY_API_TOKEN ?? '')"],
  • secrets (weak) PyModel-claude-architect-dbaea5e/tests/runtime/windows-helper-resolve.test.ts :97 const previousSecret = process.env.UNRELATED_SECRET;
  • secrets (weak) PyModel-claude-architect-dbaea5e/tests/runtime/worktree-manager.test.ts :1639 const previousSecret = process.env.UNRELATED_SECRET;

tool registrations 10

  • validateDelegationSpec PyModel-claude-architect-dbaea5e/src/mcp/server.ts :509
  • delegate PyModel-claude-architect-dbaea5e/src/mcp/server.ts :523
  • delegatePipeline PyModel-claude-architect-dbaea5e/src/mcp/server.ts :554
  • autopilotStart PyModel-claude-architect-dbaea5e/src/mcp/server.ts :584
  • autopilotStatus PyModel-claude-architect-dbaea5e/src/mcp/server.ts :607
  • autopilotResume PyModel-claude-architect-dbaea5e/src/mcp/server.ts :624
  • reviewCandidate PyModel-claude-architect-dbaea5e/src/mcp/server.ts :646
  • decideCandidate PyModel-claude-architect-dbaea5e/src/mcp/server.ts :661
  • integrateCandidate PyModel-claude-architect-dbaea5e/src/mcp/server.ts :718
  • doctor PyModel-claude-architect-dbaea5e/src/mcp/server.ts :738

declared dependencies 7

  • @modelcontextprotocol/sdk@1.30.0
  • ajv@8.20.0
  • zod@4.4.3
  • @types/node@26.2.0
  • esbuild@^0.28.2
  • typescript@^7.0.2
  • vitest@^4.1.11