agent-relay 1.1.0 → 1.2.3
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/.gitattributes +3 -0
- package/.nvmrc +1 -0
- package/.trajectories/completed/2026-01/traj_1dviorhnkcb5.json +65 -0
- package/.trajectories/completed/2026-01/traj_1dviorhnkcb5.md +37 -0
- package/.trajectories/completed/2026-01/traj_1k5if5snst2e.json +65 -0
- package/.trajectories/completed/2026-01/traj_1k5if5snst2e.md +37 -0
- package/.trajectories/completed/2026-01/traj_1rp3rges5811.json +49 -0
- package/.trajectories/completed/2026-01/traj_1rp3rges5811.md +31 -0
- package/.trajectories/completed/2026-01/traj_22bhyulruouw.json +113 -0
- package/.trajectories/completed/2026-01/traj_22bhyulruouw.md +57 -0
- package/.trajectories/completed/2026-01/traj_2dao7ddgnta0.json +53 -0
- package/.trajectories/completed/2026-01/traj_2dao7ddgnta0.md +32 -0
- package/.trajectories/completed/2026-01/traj_3t0440mjeunc.json +26 -0
- package/.trajectories/completed/2026-01/traj_3t0440mjeunc.md +6 -0
- package/.trajectories/completed/2026-01/traj_45x9494d9xnr.json +47 -0
- package/.trajectories/completed/2026-01/traj_45x9494d9xnr.md +32 -0
- package/.trajectories/completed/2026-01/traj_4aa0bb77s4nh.json +53 -0
- package/.trajectories/completed/2026-01/traj_4aa0bb77s4nh.md +32 -0
- package/.trajectories/completed/2026-01/traj_5lhmzq8rxpqv.json +59 -0
- package/.trajectories/completed/2026-01/traj_5lhmzq8rxpqv.md +33 -0
- package/.trajectories/completed/2026-01/traj_5vr4e9erb1fs.json +53 -0
- package/.trajectories/completed/2026-01/traj_5vr4e9erb1fs.md +32 -0
- package/.trajectories/completed/2026-01/traj_6fgiwdoklvym.json +48 -0
- package/.trajectories/completed/2026-01/traj_6fgiwdoklvym.md +24 -0
- package/.trajectories/completed/2026-01/traj_7ludwvz45veh.json +209 -0
- package/.trajectories/completed/2026-01/traj_7ludwvz45veh.md +97 -0
- package/.trajectories/completed/2026-01/traj_9921cuhel0pj.json +48 -0
- package/.trajectories/completed/2026-01/traj_9921cuhel0pj.md +24 -0
- package/.trajectories/completed/2026-01/traj_ajs7zqfux4wc.json +49 -0
- package/.trajectories/completed/2026-01/traj_ajs7zqfux4wc.md +23 -0
- package/.trajectories/completed/2026-01/traj_cvtqhlwcq9s0.json +53 -0
- package/.trajectories/completed/2026-01/traj_cvtqhlwcq9s0.md +32 -0
- package/.trajectories/completed/2026-01/traj_cxofprm2m2en.json +49 -0
- package/.trajectories/completed/2026-01/traj_cxofprm2m2en.md +31 -0
- package/.trajectories/completed/2026-01/traj_d2hhz3k0vrhn.json +26 -0
- package/.trajectories/completed/2026-01/traj_d2hhz3k0vrhn.md +6 -0
- package/.trajectories/completed/2026-01/traj_dfuvww9pege5.json +59 -0
- package/.trajectories/completed/2026-01/traj_dfuvww9pege5.md +37 -0
- package/.trajectories/completed/2026-01/traj_g0fisy9h51mf.json +77 -0
- package/.trajectories/completed/2026-01/traj_g0fisy9h51mf.md +42 -0
- package/.trajectories/completed/2026-01/traj_gjdre5voouod.json +53 -0
- package/.trajectories/completed/2026-01/traj_gjdre5voouod.md +32 -0
- package/.trajectories/completed/2026-01/traj_gtlyqtta3x8l.json +25 -0
- package/.trajectories/completed/2026-01/traj_gtlyqtta3x8l.md +15 -0
- package/.trajectories/completed/2026-01/traj_h4xijiuip3w4.json +101 -0
- package/.trajectories/completed/2026-01/traj_h4xijiuip3w4.md +44 -0
- package/.trajectories/completed/2026-01/traj_hhxte7w4gjjx.json +22 -0
- package/.trajectories/completed/2026-01/traj_hhxte7w4gjjx.md +5 -0
- package/.trajectories/completed/2026-01/traj_hpungyhoj6v5.json +53 -0
- package/.trajectories/completed/2026-01/traj_hpungyhoj6v5.md +32 -0
- package/.trajectories/completed/2026-01/traj_m2xkjv0w2sq7.json +25 -0
- package/.trajectories/completed/2026-01/traj_m2xkjv0w2sq7.md +15 -0
- package/.trajectories/completed/2026-01/traj_noq5zbvnrdvz.json +53 -0
- package/.trajectories/completed/2026-01/traj_noq5zbvnrdvz.md +32 -0
- package/.trajectories/completed/2026-01/traj_ntbs6ppopf46.json +53 -0
- package/.trajectories/completed/2026-01/traj_ntbs6ppopf46.md +32 -0
- package/.trajectories/completed/2026-01/traj_ozd98si6a7ns.json +48 -0
- package/.trajectories/completed/2026-01/traj_ozd98si6a7ns.md +24 -0
- package/.trajectories/completed/2026-01/traj_prdza7a5cxp5.json +53 -0
- package/.trajectories/completed/2026-01/traj_prdza7a5cxp5.md +32 -0
- package/.trajectories/completed/2026-01/traj_qb3twvvywfwi.json +77 -0
- package/.trajectories/completed/2026-01/traj_qb3twvvywfwi.md +42 -0
- package/.trajectories/completed/2026-01/traj_qft54mi7nfor.json +53 -0
- package/.trajectories/completed/2026-01/traj_qft54mi7nfor.md +32 -0
- package/.trajectories/completed/2026-01/traj_qx9uhf8whhxo.json +83 -0
- package/.trajectories/completed/2026-01/traj_qx9uhf8whhxo.md +47 -0
- package/.trajectories/completed/2026-01/traj_rd9toccj18a0.json +59 -0
- package/.trajectories/completed/2026-01/traj_rd9toccj18a0.md +37 -0
- package/.trajectories/completed/2026-01/traj_rt4fiw3ecp50.json +48 -0
- package/.trajectories/completed/2026-01/traj_rt4fiw3ecp50.md +16 -0
- package/.trajectories/completed/2026-01/traj_st8j35b0hrlc.json +59 -0
- package/.trajectories/completed/2026-01/traj_st8j35b0hrlc.md +37 -0
- package/.trajectories/completed/2026-01/traj_t1yy8m7hbuxp.json +53 -0
- package/.trajectories/completed/2026-01/traj_t1yy8m7hbuxp.md +32 -0
- package/.trajectories/completed/2026-01/traj_tmux_orchestrator_analysis.json +84 -0
- package/.trajectories/completed/2026-01/traj_tmux_orchestrator_analysis.md +109 -0
- package/.trajectories/completed/2026-01/traj_u9n9eqasw16k.json +53 -0
- package/.trajectories/completed/2026-01/traj_u9n9eqasw16k.md +32 -0
- package/.trajectories/completed/2026-01/traj_v87hypnongqx.json +71 -0
- package/.trajectories/completed/2026-01/traj_v87hypnongqx.md +42 -0
- package/.trajectories/completed/2026-01/traj_wkp2fgzdyinb.json +53 -0
- package/.trajectories/completed/2026-01/traj_wkp2fgzdyinb.md +32 -0
- package/.trajectories/completed/2026-01/traj_x14t8w8rn7xg.json +20 -0
- package/.trajectories/completed/2026-01/traj_x14t8w8rn7xg.md +6 -0
- package/.trajectories/completed/2026-01/traj_xnwbznkvv8ua.json +175 -0
- package/.trajectories/completed/2026-01/traj_xnwbznkvv8ua.md +82 -0
- package/.trajectories/completed/2026-01/traj_ysjc8zaeqtd3.json +47 -0
- package/.trajectories/completed/2026-01/traj_ysjc8zaeqtd3.md +32 -0
- package/.trajectories/completed/2026-01/traj_yvdadtvdgnz3.json +59 -0
- package/.trajectories/completed/2026-01/traj_yvdadtvdgnz3.md +37 -0
- package/.trajectories/completed/2026-01/traj_z0vcw1wrzide.json +53 -0
- package/.trajectories/completed/2026-01/traj_z0vcw1wrzide.md +32 -0
- package/.trajectories/index.json +314 -0
- package/ARCHITECTURE.md +1245 -0
- package/README.md +1 -1
- package/TESTING.md +278 -0
- package/deploy/init-db.sql +5 -0
- package/deploy/scripts/setup-fly-workspaces.sh +69 -0
- package/deploy/scripts/setup-railway.sh +75 -0
- package/deploy/workspace/entrypoint-browser.sh +118 -0
- package/deploy/workspace/entrypoint.sh +348 -0
- package/deploy/workspace/git-credential-relay +111 -0
- package/dist/bridge/spawner.d.ts +53 -0
- package/dist/bridge/spawner.js +203 -19
- package/dist/bridge/types.d.ts +12 -0
- package/dist/cli/index.js +618 -5
- package/dist/cloud/api/auth.d.ts +3 -2
- package/dist/cloud/api/auth.js +10 -98
- package/dist/cloud/api/billing.js +30 -9
- package/dist/cloud/api/cli-pty-runner.d.ts +54 -0
- package/dist/cloud/api/cli-pty-runner.js +119 -0
- package/dist/cloud/api/codex-auth-helper.d.ts +15 -0
- package/dist/cloud/api/codex-auth-helper.js +100 -0
- package/dist/cloud/api/generic-webhooks.d.ts +8 -0
- package/dist/cloud/api/generic-webhooks.js +129 -0
- package/dist/cloud/api/git.d.ts +8 -0
- package/dist/cloud/api/git.js +152 -0
- package/dist/cloud/api/github-app.d.ts +11 -0
- package/dist/cloud/api/github-app.js +189 -0
- package/dist/cloud/api/middleware/planLimits.d.ts +7 -0
- package/dist/cloud/api/middleware/planLimits.js +39 -1
- package/dist/cloud/api/monitoring.d.ts +11 -0
- package/dist/cloud/api/monitoring.js +578 -0
- package/dist/cloud/api/nango-auth.d.ts +9 -0
- package/dist/cloud/api/nango-auth.js +377 -0
- package/dist/cloud/api/onboarding.d.ts +8 -1
- package/dist/cloud/api/onboarding.js +313 -119
- package/dist/cloud/api/policy.d.ts +8 -0
- package/dist/cloud/api/policy.js +229 -0
- package/dist/cloud/api/providers.js +114 -42
- package/dist/cloud/api/repos.d.ts +1 -0
- package/dist/cloud/api/repos.js +186 -0
- package/dist/cloud/api/test-helpers.d.ts +10 -0
- package/dist/cloud/api/test-helpers.js +575 -0
- package/dist/cloud/api/webhooks.d.ts +8 -0
- package/dist/cloud/api/webhooks.js +645 -0
- package/dist/cloud/api/workspaces.js +320 -12
- package/dist/cloud/billing/plans.js +32 -19
- package/dist/cloud/billing/types.d.ts +9 -3
- package/dist/cloud/config.d.ts +9 -2
- package/dist/cloud/config.js +13 -4
- package/dist/cloud/db/drizzle.d.ts +84 -1
- package/dist/cloud/db/drizzle.js +470 -0
- package/dist/cloud/db/index.d.ts +9 -4
- package/dist/cloud/db/index.js +11 -3
- package/dist/cloud/db/schema.d.ts +3283 -556
- package/dist/cloud/db/schema.js +314 -1
- package/dist/cloud/index.d.ts +1 -0
- package/dist/cloud/index.js +2 -0
- package/dist/cloud/provisioner/index.d.ts +56 -0
- package/dist/cloud/provisioner/index.js +676 -34
- package/dist/cloud/server.d.ts +1 -0
- package/dist/cloud/server.js +362 -13
- package/dist/cloud/services/auto-scaler.d.ts +152 -0
- package/dist/cloud/services/auto-scaler.js +439 -0
- package/dist/cloud/services/capacity-manager.d.ts +148 -0
- package/dist/cloud/services/capacity-manager.js +449 -0
- package/dist/cloud/services/ci-agent-spawner.d.ts +49 -0
- package/dist/cloud/services/ci-agent-spawner.js +373 -0
- package/dist/cloud/services/index.d.ts +12 -0
- package/dist/cloud/services/index.js +15 -0
- package/dist/cloud/services/mention-handler.d.ts +65 -0
- package/dist/cloud/services/mention-handler.js +405 -0
- package/dist/cloud/services/nango.d.ts +186 -0
- package/dist/cloud/services/nango.js +344 -0
- package/dist/cloud/services/persistence.d.ts +131 -0
- package/dist/cloud/services/persistence.js +200 -0
- package/dist/cloud/services/planLimits.d.ts +37 -0
- package/dist/cloud/services/planLimits.js +86 -5
- package/dist/cloud/services/scaling-orchestrator.d.ts +159 -0
- package/dist/cloud/services/scaling-orchestrator.js +502 -0
- package/dist/cloud/services/scaling-policy.d.ts +121 -0
- package/dist/cloud/services/scaling-policy.js +415 -0
- package/dist/cloud/vault/index.js +1 -1
- package/dist/cloud/webhooks/index.d.ts +24 -0
- package/dist/cloud/webhooks/index.js +29 -0
- package/dist/cloud/webhooks/parsers/github.d.ts +8 -0
- package/dist/cloud/webhooks/parsers/github.js +234 -0
- package/dist/cloud/webhooks/parsers/index.d.ts +23 -0
- package/dist/cloud/webhooks/parsers/index.js +30 -0
- package/dist/cloud/webhooks/parsers/linear.d.ts +9 -0
- package/dist/cloud/webhooks/parsers/linear.js +258 -0
- package/dist/cloud/webhooks/parsers/slack.d.ts +9 -0
- package/dist/cloud/webhooks/parsers/slack.js +214 -0
- package/dist/cloud/webhooks/responders/github.d.ts +8 -0
- package/dist/cloud/webhooks/responders/github.js +73 -0
- package/dist/cloud/webhooks/responders/index.d.ts +23 -0
- package/dist/cloud/webhooks/responders/index.js +30 -0
- package/dist/cloud/webhooks/responders/linear.d.ts +9 -0
- package/dist/cloud/webhooks/responders/linear.js +149 -0
- package/dist/cloud/webhooks/responders/slack.d.ts +20 -0
- package/dist/cloud/webhooks/responders/slack.js +178 -0
- package/dist/cloud/webhooks/router.d.ts +25 -0
- package/dist/cloud/webhooks/router.js +504 -0
- package/dist/cloud/webhooks/rules-engine.d.ts +24 -0
- package/dist/cloud/webhooks/rules-engine.js +287 -0
- package/dist/cloud/webhooks/types.d.ts +186 -0
- package/dist/cloud/webhooks/types.js +8 -0
- package/dist/continuity/formatter.d.ts +51 -0
- package/dist/continuity/formatter.js +313 -0
- package/dist/continuity/handoff-store.d.ts +67 -0
- package/dist/continuity/handoff-store.js +472 -0
- package/dist/continuity/index.d.ts +45 -0
- package/dist/continuity/index.js +48 -0
- package/dist/continuity/ledger-store.d.ts +110 -0
- package/dist/continuity/ledger-store.js +500 -0
- package/dist/continuity/manager.d.ts +178 -0
- package/dist/continuity/manager.js +562 -0
- package/dist/continuity/parser.d.ts +76 -0
- package/dist/continuity/parser.js +579 -0
- package/dist/continuity/types.d.ts +180 -0
- package/dist/continuity/types.js +9 -0
- package/dist/daemon/agent-manager.d.ts +27 -0
- package/dist/daemon/agent-manager.js +107 -6
- package/dist/daemon/agent-registry.d.ts +32 -0
- package/dist/daemon/agent-registry.js +42 -2
- package/dist/daemon/api.d.ts +12 -0
- package/dist/daemon/api.js +131 -2
- package/dist/daemon/cli-auth.d.ts +67 -0
- package/dist/daemon/cli-auth.js +537 -0
- package/dist/daemon/cloud-sync.js +9 -7
- package/dist/daemon/orchestrator.js +30 -0
- package/dist/daemon/router.d.ts +5 -0
- package/dist/daemon/router.js +78 -26
- package/dist/daemon/server.d.ts +5 -0
- package/dist/daemon/server.js +9 -1
- package/dist/daemon/services/browser-testing.d.ts +88 -0
- package/dist/daemon/services/browser-testing.js +244 -0
- package/dist/daemon/services/container-spawner.d.ts +135 -0
- package/dist/daemon/services/container-spawner.js +313 -0
- package/dist/daemon/types.d.ts +5 -1
- package/dist/dashboard/out/404.html +1 -1
- package/dist/dashboard/out/_next/static/chunks/116-2502180def231162.js +1 -0
- package/dist/dashboard/out/_next/static/chunks/282-980c2eb8fff20123.js +1 -0
- package/dist/dashboard/out/_next/static/chunks/699-3b1cd6618a45d259.js +1 -0
- package/dist/dashboard/out/_next/static/chunks/724-2dae7627550ab88f.js +9 -0
- package/dist/dashboard/out/_next/static/chunks/766-1f2dd8cb7f766b0b.js +1 -0
- package/dist/dashboard/out/_next/static/chunks/app/app/onboarding/page-3fdfa60e53f2810d.js +1 -0
- package/dist/dashboard/out/_next/static/chunks/app/app/page-e6381e5a6e1fbcfd.js +1 -0
- package/dist/dashboard/out/_next/static/chunks/app/connect-repos/page-3538dfe0ffe984b8.js +1 -0
- package/dist/dashboard/out/_next/static/chunks/app/history/{page-b6edd4dde8d08194.js → page-abb9ab2d329f56e9.js} +1 -1
- package/dist/dashboard/out/_next/static/chunks/app/layout-c0d118c0f92d969c.js +1 -0
- package/dist/dashboard/out/_next/static/chunks/app/login/page-c22d080201cbd9fb.js +1 -0
- package/dist/dashboard/out/_next/static/chunks/app/metrics/page-67a3e98d9a43a6ed.js +1 -0
- package/dist/dashboard/out/_next/static/chunks/app/page-77e9c65420a06cfb.js +1 -0
- package/dist/dashboard/out/_next/static/chunks/app/pricing/page-b08ed1c34d14434a.js +1 -0
- package/dist/dashboard/out/_next/static/chunks/app/providers/page-e88bc117ef7671c3.js +1 -0
- package/dist/dashboard/out/_next/static/chunks/app/signup/page-68d34f50baa8ab6b.js +1 -0
- package/dist/dashboard/out/_next/static/chunks/e868780c-48e5f147c90a3a41.js +18 -0
- package/dist/dashboard/out/_next/static/chunks/{main-app-5d692157a8eb1fd9.js → main-app-6e8e8d3ef4e0192a.js} +1 -1
- package/dist/dashboard/out/_next/static/chunks/{main-c2f423b9c9f4591b.js → main-ed4e1fb6f29c34cf.js} +1 -1
- package/dist/dashboard/out/_next/static/chunks/webpack-1cdd8ed57114d5e1.js +1 -0
- package/dist/dashboard/out/_next/static/css/29852f26181969a0.css +1 -0
- package/dist/dashboard/out/_next/static/css/7c3ae9e8617d42a5.css +1 -0
- package/dist/dashboard/out/app/onboarding.html +1 -0
- package/dist/dashboard/out/app/onboarding.txt +7 -0
- package/dist/dashboard/out/app.html +1 -14
- package/dist/dashboard/out/app.txt +2 -2
- package/dist/dashboard/out/connect-repos.html +1 -0
- package/dist/dashboard/out/connect-repos.txt +7 -0
- package/dist/dashboard/out/history.html +1 -1
- package/dist/dashboard/out/history.txt +2 -2
- package/dist/dashboard/out/index.html +1 -1
- package/dist/dashboard/out/index.txt +2 -2
- package/dist/dashboard/out/login.html +6 -0
- package/dist/dashboard/out/login.txt +7 -0
- package/dist/dashboard/out/metrics.html +1 -1
- package/dist/dashboard/out/metrics.txt +2 -2
- package/dist/dashboard/out/pricing.html +3 -3
- package/dist/dashboard/out/pricing.txt +2 -2
- package/dist/dashboard/out/providers.html +1 -0
- package/dist/dashboard/out/providers.txt +7 -0
- package/dist/dashboard/out/signup.html +6 -0
- package/dist/dashboard/out/signup.txt +7 -0
- package/dist/dashboard-server/server.js +1308 -8
- package/dist/hooks/emitter.d.ts +40 -0
- package/dist/hooks/emitter.js +63 -0
- package/dist/hooks/index.d.ts +3 -0
- package/dist/hooks/index.js +3 -0
- package/dist/hooks/registry.d.ts +173 -0
- package/dist/hooks/registry.js +476 -0
- package/dist/hooks/trajectory-hooks.d.ts +52 -0
- package/dist/hooks/trajectory-hooks.js +183 -0
- package/dist/hooks/types.d.ts +141 -0
- package/dist/index.d.ts +2 -0
- package/dist/index.js +3 -0
- package/dist/memory/adapters/index.d.ts +8 -0
- package/dist/memory/adapters/index.js +8 -0
- package/dist/memory/adapters/inmemory.d.ts +59 -0
- package/dist/memory/adapters/inmemory.js +195 -0
- package/dist/memory/adapters/supermemory.d.ts +71 -0
- package/dist/memory/adapters/supermemory.js +338 -0
- package/dist/memory/factory.d.ts +48 -0
- package/dist/memory/factory.js +143 -0
- package/dist/memory/index.d.ts +32 -0
- package/dist/memory/index.js +32 -0
- package/dist/memory/memory-hooks.d.ts +60 -0
- package/dist/memory/memory-hooks.js +313 -0
- package/dist/memory/service.d.ts +49 -0
- package/dist/memory/service.js +146 -0
- package/dist/memory/types.d.ts +195 -0
- package/dist/memory/types.js +8 -0
- package/dist/policy/agent-policy.d.ts +225 -0
- package/dist/policy/agent-policy.js +665 -0
- package/dist/policy/cloud-policy-fetcher.d.ts +12 -0
- package/dist/policy/cloud-policy-fetcher.js +64 -0
- package/dist/resiliency/crash-insights.d.ts +156 -0
- package/dist/resiliency/crash-insights.js +492 -0
- package/dist/resiliency/gossip-health.d.ts +137 -0
- package/dist/resiliency/gossip-health.js +241 -0
- package/dist/resiliency/index.d.ts +5 -0
- package/dist/resiliency/index.js +5 -0
- package/dist/resiliency/leader-watchdog.d.ts +109 -0
- package/dist/resiliency/leader-watchdog.js +189 -0
- package/dist/resiliency/memory-monitor.d.ts +172 -0
- package/dist/resiliency/memory-monitor.js +593 -0
- package/dist/resiliency/stateless-lead.d.ts +149 -0
- package/dist/resiliency/stateless-lead.js +308 -0
- package/dist/resiliency/supervisor.d.ts +38 -0
- package/dist/resiliency/supervisor.js +122 -0
- package/dist/shared/cli-auth-config.d.ts +91 -0
- package/dist/shared/cli-auth-config.js +264 -0
- package/dist/storage/adapter.d.ts +1 -1
- package/dist/trajectory/config.d.ts +84 -0
- package/dist/trajectory/config.js +163 -0
- package/dist/trajectory/index.d.ts +8 -0
- package/dist/trajectory/index.js +8 -0
- package/dist/trajectory/integration.d.ts +292 -0
- package/dist/trajectory/integration.js +834 -0
- package/dist/utils/logger.js +1 -1
- package/dist/utils/project-namespace.d.ts +24 -0
- package/dist/utils/project-namespace.js +84 -0
- package/dist/wrapper/parser.d.ts +10 -0
- package/dist/wrapper/parser.js +100 -33
- package/dist/wrapper/pty-wrapper.d.ts +197 -16
- package/dist/wrapper/pty-wrapper.js +943 -106
- package/dist/wrapper/shared.d.ts +165 -0
- package/dist/wrapper/shared.js +270 -0
- package/dist/wrapper/tmux-wrapper.d.ts +73 -11
- package/dist/wrapper/tmux-wrapper.js +541 -120
- package/package.json +16 -16
- package/scripts/postinstall.js +60 -0
- package/test-push.txt +1 -0
- package/bin/tmux +0 -0
- package/dist/bridge/config.d.ts.map +0 -1
- package/dist/bridge/config.js.map +0 -1
- package/dist/bridge/index.d.ts.map +0 -1
- package/dist/bridge/index.js.map +0 -1
- package/dist/bridge/multi-project-client.d.ts.map +0 -1
- package/dist/bridge/multi-project-client.js.map +0 -1
- package/dist/bridge/shadow-cli.d.ts.map +0 -1
- package/dist/bridge/shadow-cli.js.map +0 -1
- package/dist/bridge/shadow-config.d.ts.map +0 -1
- package/dist/bridge/shadow-config.js.map +0 -1
- package/dist/bridge/spawner.d.ts.map +0 -1
- package/dist/bridge/spawner.js.map +0 -1
- package/dist/bridge/teams-config.d.ts.map +0 -1
- package/dist/bridge/teams-config.js.map +0 -1
- package/dist/bridge/types.d.ts.map +0 -1
- package/dist/bridge/types.js.map +0 -1
- package/dist/bridge/utils.d.ts.map +0 -1
- package/dist/bridge/utils.js.map +0 -1
- package/dist/cli/index.d.ts.map +0 -1
- package/dist/cli/index.js.map +0 -1
- package/dist/cloud/api/auth.d.ts.map +0 -1
- package/dist/cloud/api/auth.js.map +0 -1
- package/dist/cloud/api/billing.d.ts.map +0 -1
- package/dist/cloud/api/billing.js.map +0 -1
- package/dist/cloud/api/coordinators.d.ts.map +0 -1
- package/dist/cloud/api/coordinators.js.map +0 -1
- package/dist/cloud/api/daemons.d.ts.map +0 -1
- package/dist/cloud/api/daemons.js.map +0 -1
- package/dist/cloud/api/middleware/planLimits.d.ts.map +0 -1
- package/dist/cloud/api/middleware/planLimits.js.map +0 -1
- package/dist/cloud/api/onboarding.d.ts.map +0 -1
- package/dist/cloud/api/onboarding.js.map +0 -1
- package/dist/cloud/api/providers.d.ts.map +0 -1
- package/dist/cloud/api/providers.js.map +0 -1
- package/dist/cloud/api/repos.d.ts.map +0 -1
- package/dist/cloud/api/repos.js.map +0 -1
- package/dist/cloud/api/teams.d.ts.map +0 -1
- package/dist/cloud/api/teams.js.map +0 -1
- package/dist/cloud/api/usage.d.ts.map +0 -1
- package/dist/cloud/api/usage.js.map +0 -1
- package/dist/cloud/api/workspaces.d.ts.map +0 -1
- package/dist/cloud/api/workspaces.js.map +0 -1
- package/dist/cloud/billing/index.d.ts.map +0 -1
- package/dist/cloud/billing/index.js.map +0 -1
- package/dist/cloud/billing/plans.d.ts.map +0 -1
- package/dist/cloud/billing/plans.js.map +0 -1
- package/dist/cloud/billing/service.d.ts.map +0 -1
- package/dist/cloud/billing/service.js.map +0 -1
- package/dist/cloud/billing/types.d.ts.map +0 -1
- package/dist/cloud/billing/types.js.map +0 -1
- package/dist/cloud/config.d.ts.map +0 -1
- package/dist/cloud/config.js.map +0 -1
- package/dist/cloud/db/drizzle.d.ts.map +0 -1
- package/dist/cloud/db/drizzle.js.map +0 -1
- package/dist/cloud/db/index.d.ts.map +0 -1
- package/dist/cloud/db/index.js.map +0 -1
- package/dist/cloud/db/schema.d.ts.map +0 -1
- package/dist/cloud/db/schema.js.map +0 -1
- package/dist/cloud/index.d.ts.map +0 -1
- package/dist/cloud/index.js.map +0 -1
- package/dist/cloud/provisioner/index.d.ts.map +0 -1
- package/dist/cloud/provisioner/index.js.map +0 -1
- package/dist/cloud/server.d.ts.map +0 -1
- package/dist/cloud/server.js.map +0 -1
- package/dist/cloud/services/coordinator.d.ts.map +0 -1
- package/dist/cloud/services/coordinator.js.map +0 -1
- package/dist/cloud/services/planLimits.d.ts.map +0 -1
- package/dist/cloud/services/planLimits.js.map +0 -1
- package/dist/cloud/vault/index.d.ts.map +0 -1
- package/dist/cloud/vault/index.js.map +0 -1
- package/dist/daemon/agent-manager.d.ts.map +0 -1
- package/dist/daemon/agent-manager.js.map +0 -1
- package/dist/daemon/agent-registry.d.ts.map +0 -1
- package/dist/daemon/agent-registry.js.map +0 -1
- package/dist/daemon/api.d.ts.map +0 -1
- package/dist/daemon/api.js.map +0 -1
- package/dist/daemon/auth.d.ts.map +0 -1
- package/dist/daemon/auth.js.map +0 -1
- package/dist/daemon/cloud-sync.d.ts.map +0 -1
- package/dist/daemon/cloud-sync.js.map +0 -1
- package/dist/daemon/connection.d.ts.map +0 -1
- package/dist/daemon/connection.js.map +0 -1
- package/dist/daemon/index.d.ts.map +0 -1
- package/dist/daemon/index.js.map +0 -1
- package/dist/daemon/orchestrator.d.ts.map +0 -1
- package/dist/daemon/orchestrator.js.map +0 -1
- package/dist/daemon/registry.d.ts.map +0 -1
- package/dist/daemon/registry.js.map +0 -1
- package/dist/daemon/router.d.ts.map +0 -1
- package/dist/daemon/router.js.map +0 -1
- package/dist/daemon/server.d.ts.map +0 -1
- package/dist/daemon/server.js.map +0 -1
- package/dist/daemon/types.d.ts.map +0 -1
- package/dist/daemon/types.js.map +0 -1
- package/dist/daemon/workspace-manager.d.ts.map +0 -1
- package/dist/daemon/workspace-manager.js.map +0 -1
- package/dist/dashboard/out/_next/static/chunks/693-7b3301d8f6bc5014.js +0 -1
- package/dist/dashboard/out/_next/static/chunks/713-f78477eb185f1f4d.js +0 -1
- package/dist/dashboard/out/_next/static/chunks/766-e53e1cfe39b0b5b5.js +0 -1
- package/dist/dashboard/out/_next/static/chunks/900-037c64bfd797fb2a.js +0 -1
- package/dist/dashboard/out/_next/static/chunks/app/app/page-e3d9e1f4466b9bae.js +0 -1
- package/dist/dashboard/out/_next/static/chunks/app/layout-2433bb48965f4333.js +0 -1
- package/dist/dashboard/out/_next/static/chunks/app/metrics/page-e68825a81db67ba1.js +0 -1
- package/dist/dashboard/out/_next/static/chunks/app/page-cc108bf68c8a657f.js +0 -1
- package/dist/dashboard/out/_next/static/chunks/app/pricing/page-d80e03a5297f95b6.js +0 -1
- package/dist/dashboard/out/_next/static/chunks/webpack-a5acc2831d094776.js +0 -1
- package/dist/dashboard/out/_next/static/css/79b80143647a07d7.css +0 -1
- package/dist/dashboard/out/_next/static/css/8cf277370ad48cfe.css +0 -1
- package/dist/dashboard-server/metrics.d.ts.map +0 -1
- package/dist/dashboard-server/metrics.js.map +0 -1
- package/dist/dashboard-server/needs-attention.d.ts.map +0 -1
- package/dist/dashboard-server/needs-attention.js.map +0 -1
- package/dist/dashboard-server/server.d.ts.map +0 -1
- package/dist/dashboard-server/server.js.map +0 -1
- package/dist/dashboard-server/start.d.ts.map +0 -1
- package/dist/dashboard-server/start.js.map +0 -1
- package/dist/hooks/inbox-check/hook.d.ts.map +0 -1
- package/dist/hooks/inbox-check/hook.js.map +0 -1
- package/dist/hooks/inbox-check/index.d.ts.map +0 -1
- package/dist/hooks/inbox-check/index.js.map +0 -1
- package/dist/hooks/inbox-check/types.d.ts.map +0 -1
- package/dist/hooks/inbox-check/types.js.map +0 -1
- package/dist/hooks/inbox-check/utils.d.ts.map +0 -1
- package/dist/hooks/inbox-check/utils.js.map +0 -1
- package/dist/hooks/index.d.ts.map +0 -1
- package/dist/hooks/index.js.map +0 -1
- package/dist/hooks/types.d.ts.map +0 -1
- package/dist/hooks/types.js.map +0 -1
- package/dist/index.d.ts.map +0 -1
- package/dist/index.js.map +0 -1
- package/dist/protocol/framing.d.ts.map +0 -1
- package/dist/protocol/framing.js.map +0 -1
- package/dist/protocol/index.d.ts.map +0 -1
- package/dist/protocol/index.js.map +0 -1
- package/dist/protocol/types.d.ts.map +0 -1
- package/dist/protocol/types.js.map +0 -1
- package/dist/resiliency/context-persistence.d.ts.map +0 -1
- package/dist/resiliency/context-persistence.js.map +0 -1
- package/dist/resiliency/health-monitor.d.ts.map +0 -1
- package/dist/resiliency/health-monitor.js.map +0 -1
- package/dist/resiliency/index.d.ts.map +0 -1
- package/dist/resiliency/index.js.map +0 -1
- package/dist/resiliency/logger.d.ts.map +0 -1
- package/dist/resiliency/logger.js.map +0 -1
- package/dist/resiliency/metrics.d.ts.map +0 -1
- package/dist/resiliency/metrics.js.map +0 -1
- package/dist/resiliency/provider-context.d.ts.map +0 -1
- package/dist/resiliency/provider-context.js.map +0 -1
- package/dist/resiliency/supervisor.d.ts.map +0 -1
- package/dist/resiliency/supervisor.js.map +0 -1
- package/dist/state/agent-state.d.ts.map +0 -1
- package/dist/state/agent-state.js.map +0 -1
- package/dist/storage/adapter.d.ts.map +0 -1
- package/dist/storage/adapter.js.map +0 -1
- package/dist/storage/sqlite-adapter.d.ts.map +0 -1
- package/dist/storage/sqlite-adapter.js.map +0 -1
- package/dist/utils/agent-config.d.ts.map +0 -1
- package/dist/utils/agent-config.js.map +0 -1
- package/dist/utils/command-resolver.d.ts.map +0 -1
- package/dist/utils/command-resolver.js.map +0 -1
- package/dist/utils/index.d.ts.map +0 -1
- package/dist/utils/index.js.map +0 -1
- package/dist/utils/logger.d.ts.map +0 -1
- package/dist/utils/logger.js.map +0 -1
- package/dist/utils/name-generator.d.ts.map +0 -1
- package/dist/utils/name-generator.js.map +0 -1
- package/dist/utils/project-namespace.d.ts.map +0 -1
- package/dist/utils/project-namespace.js.map +0 -1
- package/dist/utils/tmux-resolver.d.ts.map +0 -1
- package/dist/utils/tmux-resolver.js.map +0 -1
- package/dist/utils/update-checker.d.ts.map +0 -1
- package/dist/utils/update-checker.js.map +0 -1
- package/dist/wrapper/client.d.ts.map +0 -1
- package/dist/wrapper/client.js.map +0 -1
- package/dist/wrapper/inbox.d.ts.map +0 -1
- package/dist/wrapper/inbox.js.map +0 -1
- package/dist/wrapper/index.d.ts.map +0 -1
- package/dist/wrapper/index.js.map +0 -1
- package/dist/wrapper/parser.d.ts.map +0 -1
- package/dist/wrapper/parser.js.map +0 -1
- package/dist/wrapper/pty-wrapper.d.ts.map +0 -1
- package/dist/wrapper/pty-wrapper.js.map +0 -1
- package/dist/wrapper/tmux-wrapper.d.ts.map +0 -1
- package/dist/wrapper/tmux-wrapper.js.map +0 -1
- package/docs/AGENTS.md +0 -513
- package/docs/ARCHITECTURE_DECISIONS.md +0 -175
- package/docs/CHANGELOG.md +0 -11
- package/docs/CLI-SIMPLIFICATION-COMPLETE.md +0 -48
- package/docs/CLOUD-ARCHITECTURE.md +0 -652
- package/docs/CLOUD-ONBOARDING-DESIGN.md +0 -1983
- package/docs/COMPETITIVE_ANALYSIS.md +0 -897
- package/docs/CONTRIBUTING.md +0 -151
- package/docs/DESIGN_BRIDGE_STAFFING.md +0 -878
- package/docs/DESIGN_V2.md +0 -1079
- package/docs/INTEGRATION-GUIDE.md +0 -926
- package/docs/MONETIZATION.md +0 -1679
- package/docs/PROPOSAL-trajectories.md +0 -1582
- package/docs/PROTOCOL.md +0 -325
- package/docs/SCALING_ANALYSIS.md +0 -280
- package/docs/TESTING_PRESENCE_FEATURES.md +0 -327
- package/docs/TMUX_IMPLEMENTATION_NOTES.md +0 -364
- package/docs/TMUX_IMPROVEMENTS.md +0 -968
- package/docs/agent-relay-snippet.md +0 -168
- package/docs/competitive-analysis-mcp-agent-mail.md +0 -389
- package/docs/dashboard-v2-plan.md +0 -179
- package/docs/guides/CLOUD.md +0 -236
- package/docs/guides/LOCAL.md +0 -535
- package/docs/guides/SELF-HOSTED.md +0 -494
- package/docs/proposals/shadow-as-subagent.md +0 -765
- package/docs/proposals/slack-bot-integration.md +0 -1457
- package/docs/removable-code-analysis.md +0 -24
- package/scripts/dev/PUBLIC_RELEASE_PLAN.md +0 -88
- package/scripts/dev/dev-team-setup.sh +0 -431
- package/scripts/e2e-test.sh +0 -119
- package/scripts/games/game-protocol.md +0 -79
- package/scripts/games/hearts-setup.sh +0 -264
- package/scripts/tictactoe-setup.sh +0 -181
- /package/dist/dashboard/out/_next/static/chunks/{117-b2cd8d6485aacf2b.js → 117-f7b8ab0809342e77.js} +0 -0
- /package/dist/dashboard/out/_next/static/chunks/{648-8f3f26864ce515e5.js → 648-5cc6e1921389a58a.js} +0 -0
- /package/dist/dashboard/out/_next/static/chunks/app/_not-found/{page-0b990dbb71d72a98.js → page-53b8a69f76db17d0.js} +0 -0
- /package/dist/dashboard/out/_next/static/chunks/{fd9d1056-bf46c09eb57e019c.js → fd9d1056-609918ca7b6280bb.js} +0 -0
- /package/dist/dashboard/out/_next/static/{6HHWb2ZmnJ4OSm0zUP7h4 → wPgKJtcOmTFLpUncDg16A}/_buildManifest.js +0 -0
- /package/dist/dashboard/out/_next/static/{6HHWb2ZmnJ4OSm0zUP7h4 → wPgKJtcOmTFLpUncDg16A}/_ssgManifest.js +0 -0
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
{
|
|
2
|
+
"id": "traj_4aa0bb77s4nh",
|
|
3
|
+
"version": 1,
|
|
4
|
+
"task": {
|
|
5
|
+
"title": "Record backend review findings",
|
|
6
|
+
"source": {
|
|
7
|
+
"system": "plain",
|
|
8
|
+
"id": "dashboard-followup"
|
|
9
|
+
}
|
|
10
|
+
},
|
|
11
|
+
"status": "completed",
|
|
12
|
+
"startedAt": "2026-01-03T14:42:29.295Z",
|
|
13
|
+
"agents": [
|
|
14
|
+
{
|
|
15
|
+
"name": "CodeReviewer",
|
|
16
|
+
"role": "lead",
|
|
17
|
+
"joinedAt": "2026-01-03T14:42:29.296Z"
|
|
18
|
+
}
|
|
19
|
+
],
|
|
20
|
+
"chapters": [
|
|
21
|
+
{
|
|
22
|
+
"id": "chap_m8vhe19cpw38",
|
|
23
|
+
"title": "Work",
|
|
24
|
+
"agentName": "default",
|
|
25
|
+
"startedAt": "2026-01-03T14:42:39.352Z",
|
|
26
|
+
"events": [
|
|
27
|
+
{
|
|
28
|
+
"ts": 1767451359354,
|
|
29
|
+
"type": "decision",
|
|
30
|
+
"content": "Backend review fixes required: Backend review fixes required",
|
|
31
|
+
"raw": {
|
|
32
|
+
"question": "Backend review fixes required",
|
|
33
|
+
"chosen": "Backend review fixes required",
|
|
34
|
+
"alternatives": [],
|
|
35
|
+
"reasoning": "Remove unsupported --json from startTrajectory; map abandoned->error and active->running in mapEventStatus so statuses render correctly before merge"
|
|
36
|
+
},
|
|
37
|
+
"significance": "high"
|
|
38
|
+
}
|
|
39
|
+
],
|
|
40
|
+
"endedAt": "2026-01-03T14:42:42.369Z"
|
|
41
|
+
}
|
|
42
|
+
],
|
|
43
|
+
"commits": [],
|
|
44
|
+
"filesChanged": [],
|
|
45
|
+
"projectId": "/Users/khaliqgant/Projects/agent-workforce/relay",
|
|
46
|
+
"tags": [],
|
|
47
|
+
"completedAt": "2026-01-03T14:42:42.369Z",
|
|
48
|
+
"retrospective": {
|
|
49
|
+
"summary": "Logged backend review findings into trajectory: remove unsupported --json flag and map abandoned/active statuses in mapEventStatus",
|
|
50
|
+
"approach": "Standard approach",
|
|
51
|
+
"confidence": 0.88
|
|
52
|
+
}
|
|
53
|
+
}
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
# Trajectory: Record backend review findings
|
|
2
|
+
|
|
3
|
+
> **Status:** ✅ Completed
|
|
4
|
+
> **Task:** dashboard-followup
|
|
5
|
+
> **Confidence:** 88%
|
|
6
|
+
> **Started:** January 3, 2026 at 03:42 PM
|
|
7
|
+
> **Completed:** January 3, 2026 at 03:42 PM
|
|
8
|
+
|
|
9
|
+
---
|
|
10
|
+
|
|
11
|
+
## Summary
|
|
12
|
+
|
|
13
|
+
Logged backend review findings into trajectory: remove unsupported --json flag and map abandoned/active statuses in mapEventStatus
|
|
14
|
+
|
|
15
|
+
**Approach:** Standard approach
|
|
16
|
+
|
|
17
|
+
---
|
|
18
|
+
|
|
19
|
+
## Key Decisions
|
|
20
|
+
|
|
21
|
+
### Backend review fixes required
|
|
22
|
+
- **Chose:** Backend review fixes required
|
|
23
|
+
- **Reasoning:** Remove unsupported --json from startTrajectory; map abandoned->error and active->running in mapEventStatus so statuses render correctly before merge
|
|
24
|
+
|
|
25
|
+
---
|
|
26
|
+
|
|
27
|
+
## Chapters
|
|
28
|
+
|
|
29
|
+
### 1. Work
|
|
30
|
+
*Agent: default*
|
|
31
|
+
|
|
32
|
+
- Backend review fixes required: Backend review fixes required
|
|
@@ -0,0 +1,59 @@
|
|
|
1
|
+
{
|
|
2
|
+
"id": "traj_5lhmzq8rxpqv",
|
|
3
|
+
"version": 1,
|
|
4
|
+
"task": {
|
|
5
|
+
"title": "agent-relay-yv5 - HookEmitter class",
|
|
6
|
+
"source": {
|
|
7
|
+
"system": "plain",
|
|
8
|
+
"id": "agent-relay-yv5"
|
|
9
|
+
}
|
|
10
|
+
},
|
|
11
|
+
"status": "completed",
|
|
12
|
+
"startedAt": "2026-01-03T12:03:48.661Z",
|
|
13
|
+
"agents": [],
|
|
14
|
+
"chapters": [
|
|
15
|
+
{
|
|
16
|
+
"id": "chap_68rr4xucev25",
|
|
17
|
+
"title": "Work",
|
|
18
|
+
"agentName": "default",
|
|
19
|
+
"startedAt": "2026-01-03T12:03:53.036Z",
|
|
20
|
+
"events": [
|
|
21
|
+
{
|
|
22
|
+
"ts": 1767441833036,
|
|
23
|
+
"type": "decision",
|
|
24
|
+
"content": "Starting HookEmitter implementation: Starting HookEmitter implementation",
|
|
25
|
+
"raw": {
|
|
26
|
+
"question": "Starting HookEmitter implementation",
|
|
27
|
+
"chosen": "Starting HookEmitter implementation",
|
|
28
|
+
"alternatives": [],
|
|
29
|
+
"reasoning": ""
|
|
30
|
+
},
|
|
31
|
+
"significance": "high"
|
|
32
|
+
},
|
|
33
|
+
{
|
|
34
|
+
"ts": 1767441954549,
|
|
35
|
+
"type": "decision",
|
|
36
|
+
"content": "HookEmitter supports async handlers and stop propagation: HookEmitter supports async handlers and stop propagation",
|
|
37
|
+
"raw": {
|
|
38
|
+
"question": "HookEmitter supports async handlers and stop propagation",
|
|
39
|
+
"chosen": "HookEmitter supports async handlers and stop propagation",
|
|
40
|
+
"alternatives": [],
|
|
41
|
+
"reasoning": "Needed general-purpose hook runner aligned with HOOKS_API guidance"
|
|
42
|
+
},
|
|
43
|
+
"significance": "high"
|
|
44
|
+
}
|
|
45
|
+
],
|
|
46
|
+
"endedAt": "2026-01-03T12:05:57.790Z"
|
|
47
|
+
}
|
|
48
|
+
],
|
|
49
|
+
"commits": [],
|
|
50
|
+
"filesChanged": [],
|
|
51
|
+
"projectId": "/Users/khaliqgant/Projects/agent-workforce/relay",
|
|
52
|
+
"tags": [],
|
|
53
|
+
"completedAt": "2026-01-03T12:05:57.790Z",
|
|
54
|
+
"retrospective": {
|
|
55
|
+
"summary": "Backend session work: spawn parser fixes, CommandPalette improvements, escape mechanism",
|
|
56
|
+
"approach": "Standard approach",
|
|
57
|
+
"confidence": 0.9
|
|
58
|
+
}
|
|
59
|
+
}
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
# Trajectory: agent-relay-yv5 - HookEmitter class
|
|
2
|
+
|
|
3
|
+
> **Status:** ✅ Completed
|
|
4
|
+
> **Task:** agent-relay-yv5
|
|
5
|
+
> **Confidence:** 90%
|
|
6
|
+
> **Started:** January 3, 2026 at 01:03 PM
|
|
7
|
+
> **Completed:** January 3, 2026 at 01:05 PM
|
|
8
|
+
|
|
9
|
+
---
|
|
10
|
+
|
|
11
|
+
## Summary
|
|
12
|
+
|
|
13
|
+
Backend session work: spawn parser fixes, CommandPalette improvements, escape mechanism
|
|
14
|
+
|
|
15
|
+
**Approach:** Standard approach
|
|
16
|
+
|
|
17
|
+
---
|
|
18
|
+
|
|
19
|
+
## Key Decisions
|
|
20
|
+
|
|
21
|
+
### HookEmitter supports async handlers and stop propagation
|
|
22
|
+
- **Chose:** HookEmitter supports async handlers and stop propagation
|
|
23
|
+
- **Reasoning:** Needed general-purpose hook runner aligned with HOOKS_API guidance
|
|
24
|
+
|
|
25
|
+
---
|
|
26
|
+
|
|
27
|
+
## Chapters
|
|
28
|
+
|
|
29
|
+
### 1. Work
|
|
30
|
+
*Agent: default*
|
|
31
|
+
|
|
32
|
+
- Starting HookEmitter implementation: Starting HookEmitter implementation
|
|
33
|
+
- HookEmitter supports async handlers and stop propagation: HookEmitter supports async handlers and stop propagation
|
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
{
|
|
2
|
+
"id": "traj_5vr4e9erb1fs",
|
|
3
|
+
"version": 1,
|
|
4
|
+
"task": {
|
|
5
|
+
"title": "Investigate P0 spawn bug agent-relay-453",
|
|
6
|
+
"source": {
|
|
7
|
+
"system": "plain",
|
|
8
|
+
"id": "agent-relay-453"
|
|
9
|
+
}
|
|
10
|
+
},
|
|
11
|
+
"status": "completed",
|
|
12
|
+
"startedAt": "2026-01-03T15:46:41.489Z",
|
|
13
|
+
"agents": [
|
|
14
|
+
{
|
|
15
|
+
"name": "Investigator",
|
|
16
|
+
"role": "lead",
|
|
17
|
+
"joinedAt": "2026-01-03T15:46:41.490Z"
|
|
18
|
+
}
|
|
19
|
+
],
|
|
20
|
+
"chapters": [
|
|
21
|
+
{
|
|
22
|
+
"id": "chap_hdw1ideqo9hj",
|
|
23
|
+
"title": "Work",
|
|
24
|
+
"agentName": "default",
|
|
25
|
+
"startedAt": "2026-01-03T15:46:47.112Z",
|
|
26
|
+
"events": [
|
|
27
|
+
{
|
|
28
|
+
"ts": 1767455207113,
|
|
29
|
+
"type": "decision",
|
|
30
|
+
"content": "Found fix was partially applied: Found fix was partially applied",
|
|
31
|
+
"raw": {
|
|
32
|
+
"question": "Found fix was partially applied",
|
|
33
|
+
"chosen": "Found fix was partially applied",
|
|
34
|
+
"alternatives": [],
|
|
35
|
+
"reasoning": "pty-wrapper.ts was fixed in e9ad8a0 but tmux-wrapper.ts was not updated with the same fix"
|
|
36
|
+
},
|
|
37
|
+
"significance": "high"
|
|
38
|
+
}
|
|
39
|
+
],
|
|
40
|
+
"endedAt": "2026-01-03T15:46:53.995Z"
|
|
41
|
+
}
|
|
42
|
+
],
|
|
43
|
+
"commits": [],
|
|
44
|
+
"filesChanged": [],
|
|
45
|
+
"projectId": "/Users/khaliqgant/Projects/agent-workforce/relay",
|
|
46
|
+
"tags": [],
|
|
47
|
+
"completedAt": "2026-01-03T15:46:53.995Z",
|
|
48
|
+
"retrospective": {
|
|
49
|
+
"summary": "Investigated P0 spawn bug. Found fix was partially applied: pty-wrapper.ts fixed but tmux-wrapper.ts still needs the same fix to make CLI optional with 'claude' default",
|
|
50
|
+
"approach": "Standard approach",
|
|
51
|
+
"confidence": 0.95
|
|
52
|
+
}
|
|
53
|
+
}
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
# Trajectory: Investigate P0 spawn bug agent-relay-453
|
|
2
|
+
|
|
3
|
+
> **Status:** ✅ Completed
|
|
4
|
+
> **Task:** agent-relay-453
|
|
5
|
+
> **Confidence:** 95%
|
|
6
|
+
> **Started:** January 3, 2026 at 04:46 PM
|
|
7
|
+
> **Completed:** January 3, 2026 at 04:46 PM
|
|
8
|
+
|
|
9
|
+
---
|
|
10
|
+
|
|
11
|
+
## Summary
|
|
12
|
+
|
|
13
|
+
Investigated P0 spawn bug. Found fix was partially applied: pty-wrapper.ts fixed but tmux-wrapper.ts still needs the same fix to make CLI optional with 'claude' default
|
|
14
|
+
|
|
15
|
+
**Approach:** Standard approach
|
|
16
|
+
|
|
17
|
+
---
|
|
18
|
+
|
|
19
|
+
## Key Decisions
|
|
20
|
+
|
|
21
|
+
### Found fix was partially applied
|
|
22
|
+
- **Chose:** Found fix was partially applied
|
|
23
|
+
- **Reasoning:** pty-wrapper.ts was fixed in e9ad8a0 but tmux-wrapper.ts was not updated with the same fix
|
|
24
|
+
|
|
25
|
+
---
|
|
26
|
+
|
|
27
|
+
## Chapters
|
|
28
|
+
|
|
29
|
+
### 1. Work
|
|
30
|
+
*Agent: default*
|
|
31
|
+
|
|
32
|
+
- Found fix was partially applied: Found fix was partially applied
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
{
|
|
2
|
+
"id": "traj_6fgiwdoklvym",
|
|
3
|
+
"version": 1,
|
|
4
|
+
"task": {
|
|
5
|
+
"title": "Wire up TrajectoryViewer component",
|
|
6
|
+
"source": {
|
|
7
|
+
"system": "plain",
|
|
8
|
+
"id": "agent-relay-311"
|
|
9
|
+
}
|
|
10
|
+
},
|
|
11
|
+
"status": "abandoned",
|
|
12
|
+
"startedAt": "2026-01-03T13:25:38.257Z",
|
|
13
|
+
"agents": [],
|
|
14
|
+
"chapters": [
|
|
15
|
+
{
|
|
16
|
+
"id": "chap_5a0m1gyhg4gc",
|
|
17
|
+
"title": "Work",
|
|
18
|
+
"agentName": "default",
|
|
19
|
+
"startedAt": "2026-01-03T13:26:50.947Z",
|
|
20
|
+
"events": [
|
|
21
|
+
{
|
|
22
|
+
"ts": 1767446810948,
|
|
23
|
+
"type": "decision",
|
|
24
|
+
"content": "Add Trajectory button to Header for consistent access: Add Trajectory button to Header for consistent access",
|
|
25
|
+
"raw": {
|
|
26
|
+
"question": "Add Trajectory button to Header for consistent access",
|
|
27
|
+
"chosen": "Add Trajectory button to Header for consistent access",
|
|
28
|
+
"alternatives": [],
|
|
29
|
+
"reasoning": "Current implementation only shows toggle when trajectory is active, making it hard to discover"
|
|
30
|
+
},
|
|
31
|
+
"significance": "high"
|
|
32
|
+
},
|
|
33
|
+
{
|
|
34
|
+
"ts": 1767446921392,
|
|
35
|
+
"type": "note",
|
|
36
|
+
"content": "Abandoned: Orphaned trajectory from previous session, starting new task",
|
|
37
|
+
"significance": "high"
|
|
38
|
+
}
|
|
39
|
+
],
|
|
40
|
+
"endedAt": "2026-01-03T13:28:41.392Z"
|
|
41
|
+
}
|
|
42
|
+
],
|
|
43
|
+
"commits": [],
|
|
44
|
+
"filesChanged": [],
|
|
45
|
+
"projectId": "/Users/khaliqgant/Projects/agent-workforce/relay",
|
|
46
|
+
"tags": [],
|
|
47
|
+
"completedAt": "2026-01-03T13:28:41.392Z"
|
|
48
|
+
}
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
# Trajectory: Wire up TrajectoryViewer component
|
|
2
|
+
|
|
3
|
+
> **Status:** ❌ Abandoned
|
|
4
|
+
> **Task:** agent-relay-311
|
|
5
|
+
> **Started:** January 3, 2026 at 02:25 PM
|
|
6
|
+
> **Completed:** January 3, 2026 at 02:28 PM
|
|
7
|
+
|
|
8
|
+
---
|
|
9
|
+
|
|
10
|
+
## Key Decisions
|
|
11
|
+
|
|
12
|
+
### Add Trajectory button to Header for consistent access
|
|
13
|
+
- **Chose:** Add Trajectory button to Header for consistent access
|
|
14
|
+
- **Reasoning:** Current implementation only shows toggle when trajectory is active, making it hard to discover
|
|
15
|
+
|
|
16
|
+
---
|
|
17
|
+
|
|
18
|
+
## Chapters
|
|
19
|
+
|
|
20
|
+
### 1. Work
|
|
21
|
+
*Agent: default*
|
|
22
|
+
|
|
23
|
+
- Add Trajectory button to Header for consistent access: Add Trajectory button to Header for consistent access
|
|
24
|
+
- Abandoned: Orphaned trajectory from previous session, starting new task
|
|
@@ -0,0 +1,209 @@
|
|
|
1
|
+
{
|
|
2
|
+
"id": "traj_7ludwvz45veh",
|
|
3
|
+
"version": 1,
|
|
4
|
+
"task": {
|
|
5
|
+
"title": "Provider CLI auth flow for cloud workspaces",
|
|
6
|
+
"source": {
|
|
7
|
+
"system": "plain",
|
|
8
|
+
"id": "pre-launch-fixes"
|
|
9
|
+
}
|
|
10
|
+
},
|
|
11
|
+
"status": "completed",
|
|
12
|
+
"startedAt": "2026-01-04T00:05:43.304Z",
|
|
13
|
+
"agents": [
|
|
14
|
+
{
|
|
15
|
+
"name": "khaliqgant",
|
|
16
|
+
"role": "lead",
|
|
17
|
+
"joinedAt": "2026-01-04T00:05:43.304Z"
|
|
18
|
+
}
|
|
19
|
+
],
|
|
20
|
+
"chapters": [
|
|
21
|
+
{
|
|
22
|
+
"id": "chap_esd2ffqy9f0f",
|
|
23
|
+
"title": "Work",
|
|
24
|
+
"agentName": "default",
|
|
25
|
+
"startedAt": "2026-01-04T00:05:51.196Z",
|
|
26
|
+
"events": [
|
|
27
|
+
{
|
|
28
|
+
"ts": 1767485151196,
|
|
29
|
+
"type": "decision",
|
|
30
|
+
"content": "Pre-seed Claude CLI config to skip interactive setup: Pre-seed Claude CLI config to skip interactive setup",
|
|
31
|
+
"raw": {
|
|
32
|
+
"question": "Pre-seed Claude CLI config to skip interactive setup",
|
|
33
|
+
"chosen": "Pre-seed Claude CLI config to skip interactive setup",
|
|
34
|
+
"alternatives": [],
|
|
35
|
+
"reasoning": "Claude CLI has interactive first-run (theme selection, etc). Alternative was web terminal (xterm.js) which is more flexible but complex. Pre-seeding config is simpler for MVP. May revisit for web terminal if other CLIs have similar issues."
|
|
36
|
+
},
|
|
37
|
+
"significance": "high"
|
|
38
|
+
},
|
|
39
|
+
{
|
|
40
|
+
"ts": 1767485196636,
|
|
41
|
+
"type": "decision",
|
|
42
|
+
"content": "Add settings page for CLI provider management: Add settings page for CLI provider management",
|
|
43
|
+
"raw": {
|
|
44
|
+
"question": "Add settings page for CLI provider management",
|
|
45
|
+
"chosen": "Add settings page for CLI provider management",
|
|
46
|
+
"alternatives": [],
|
|
47
|
+
"reasoning": "Users should be able to connect additional AI providers after initial setup. Settings page in workspace dashboard will allow connecting Claude, Codex, OpenCode, Droid at any time, not just during initial workspace setup."
|
|
48
|
+
},
|
|
49
|
+
"significance": "high"
|
|
50
|
+
},
|
|
51
|
+
{
|
|
52
|
+
"ts": 1767509811642,
|
|
53
|
+
"type": "decision",
|
|
54
|
+
"content": "Default trajectories to opt-out (user-level storage): Default trajectories to opt-out (user-level storage)",
|
|
55
|
+
"raw": {
|
|
56
|
+
"question": "Default trajectories to opt-out (user-level storage)",
|
|
57
|
+
"chosen": "Default trajectories to opt-out (user-level storage)",
|
|
58
|
+
"alternatives": [],
|
|
59
|
+
"reasoning": "Most repos won't want trajectory files in source control. Users must explicitly opt-in to store in repo via .relay/config.json"
|
|
60
|
+
},
|
|
61
|
+
"significance": "high"
|
|
62
|
+
},
|
|
63
|
+
{
|
|
64
|
+
"ts": 1767509822845,
|
|
65
|
+
"type": "decision",
|
|
66
|
+
"content": "Store user-level trajectories in ~/.config/agent-relay/trajectories/<project-hash>/: Store user-level trajectories in ~/.config/agent-relay/trajectories/<project-hash>/",
|
|
67
|
+
"raw": {
|
|
68
|
+
"question": "Store user-level trajectories in ~/.config/agent-relay/trajectories/<project-hash>/",
|
|
69
|
+
"chosen": "Store user-level trajectories in ~/.config/agent-relay/trajectories/<project-hash>/",
|
|
70
|
+
"alternatives": [],
|
|
71
|
+
"reasoning": "XDG-compliant path, project-isolated via hash to prevent collisions, survives repo deletion"
|
|
72
|
+
},
|
|
73
|
+
"significance": "high"
|
|
74
|
+
},
|
|
75
|
+
{
|
|
76
|
+
"ts": 1767509882710,
|
|
77
|
+
"type": "decision",
|
|
78
|
+
"content": "Trajectory settings configurable after GitHub app setup: Trajectory settings configurable after GitHub app setup",
|
|
79
|
+
"raw": {
|
|
80
|
+
"question": "Trajectory settings configurable after GitHub app setup",
|
|
81
|
+
"chosen": "Trajectory settings configurable after GitHub app setup",
|
|
82
|
+
"alternatives": [],
|
|
83
|
+
"reasoning": "Users should configure .relay/config.json after connecting repo to cloud workspace. This happens in the workspace onboarding flow."
|
|
84
|
+
},
|
|
85
|
+
"significance": "high"
|
|
86
|
+
},
|
|
87
|
+
{
|
|
88
|
+
"ts": 1767510018871,
|
|
89
|
+
"type": "decision",
|
|
90
|
+
"content": "Add dashboard API for trajectory preferences: Add dashboard API for trajectory preferences",
|
|
91
|
+
"raw": {
|
|
92
|
+
"question": "Add dashboard API for trajectory preferences",
|
|
93
|
+
"chosen": "Add dashboard API for trajectory preferences",
|
|
94
|
+
"alternatives": [],
|
|
95
|
+
"reasoning": "Users configure via dashboard after GitHub app setup, during workspace onboarding"
|
|
96
|
+
},
|
|
97
|
+
"significance": "high"
|
|
98
|
+
},
|
|
99
|
+
{
|
|
100
|
+
"ts": 1767510106990,
|
|
101
|
+
"type": "decision",
|
|
102
|
+
"content": "Add comprehensive settings with trajectory explanations: Add comprehensive settings with trajectory explanations",
|
|
103
|
+
"raw": {
|
|
104
|
+
"question": "Add comprehensive settings with trajectory explanations",
|
|
105
|
+
"chosen": "Add comprehensive settings with trajectory explanations",
|
|
106
|
+
"alternatives": [],
|
|
107
|
+
"reasoning": "Users need to understand what trajectories are (PDERO paradigm), why they'd opt-in, and link to pdero.com for more info"
|
|
108
|
+
},
|
|
109
|
+
"significance": "high"
|
|
110
|
+
},
|
|
111
|
+
{
|
|
112
|
+
"ts": 1767510429532,
|
|
113
|
+
"type": "decision",
|
|
114
|
+
"content": "Investigate Claude OAuth login flow: Investigate Claude OAuth login flow",
|
|
115
|
+
"raw": {
|
|
116
|
+
"question": "Investigate Claude OAuth login flow",
|
|
117
|
+
"chosen": "Investigate Claude OAuth login flow",
|
|
118
|
+
"alternatives": [],
|
|
119
|
+
"reasoning": "Current provider setup uses API keys but Claude uses OAuth. Need to bypass interactive prompts and get login URL for popup-based auth."
|
|
120
|
+
},
|
|
121
|
+
"significance": "high"
|
|
122
|
+
},
|
|
123
|
+
{
|
|
124
|
+
"ts": 1767510693303,
|
|
125
|
+
"type": "decision",
|
|
126
|
+
"content": "Cloud provider auth strategy for Claude: Cloud provider auth strategy for Claude",
|
|
127
|
+
"raw": {
|
|
128
|
+
"question": "Cloud provider auth strategy for Claude",
|
|
129
|
+
"chosen": "Cloud provider auth strategy for Claude",
|
|
130
|
+
"alternatives": [],
|
|
131
|
+
"reasoning": "Claude uses OAuth in cloud environments. For users connecting accounts: 1) API key works (already supported), 2) CLI setup-token is interactive, 3) Need proper OAuth device flow from Anthropic. Recommend API key for now with improved UX."
|
|
132
|
+
},
|
|
133
|
+
"significance": "high"
|
|
134
|
+
},
|
|
135
|
+
{
|
|
136
|
+
"ts": 1767511753148,
|
|
137
|
+
"type": "decision",
|
|
138
|
+
"content": "Use node-pty for CLI OAuth flow: Use node-pty for CLI OAuth flow",
|
|
139
|
+
"raw": {
|
|
140
|
+
"question": "Use node-pty for CLI OAuth flow",
|
|
141
|
+
"chosen": "Use node-pty for CLI OAuth flow",
|
|
142
|
+
"alternatives": [],
|
|
143
|
+
"reasoning": "Regular spawn with pipes doesn't properly emulate TTY, causing CLIs to behave differently. PTY ensures auth URLs are output correctly and allows sending responses to interactive prompts."
|
|
144
|
+
},
|
|
145
|
+
"significance": "high"
|
|
146
|
+
},
|
|
147
|
+
{
|
|
148
|
+
"ts": 1767511764090,
|
|
149
|
+
"type": "decision",
|
|
150
|
+
"content": "Auto-respond to Claude interactive setup prompts: Auto-respond to Claude interactive setup prompts",
|
|
151
|
+
"raw": {
|
|
152
|
+
"question": "Auto-respond to Claude interactive setup prompts",
|
|
153
|
+
"chosen": "Auto-respond to Claude interactive setup prompts",
|
|
154
|
+
"alternatives": [],
|
|
155
|
+
"reasoning": "Claude has multi-step setup: dark mode -> auth method -> login URL. We detect prompts and send enter key to progress through them automatically."
|
|
156
|
+
},
|
|
157
|
+
"significance": "high"
|
|
158
|
+
},
|
|
159
|
+
{
|
|
160
|
+
"ts": 1767635905854,
|
|
161
|
+
"type": "decision",
|
|
162
|
+
"content": "Fixed cloud server body limit for screenshot uploads: Fixed cloud server body limit for screenshot uploads",
|
|
163
|
+
"raw": {
|
|
164
|
+
"question": "Fixed cloud server body limit for screenshot uploads",
|
|
165
|
+
"chosen": "Fixed cloud server body limit for screenshot uploads",
|
|
166
|
+
"alternatives": [],
|
|
167
|
+
"reasoning": "Default express.json limit of 100kb was too small for base64 encoded images"
|
|
168
|
+
},
|
|
169
|
+
"significance": "high"
|
|
170
|
+
},
|
|
171
|
+
{
|
|
172
|
+
"ts": 1767635932334,
|
|
173
|
+
"type": "decision",
|
|
174
|
+
"content": "Added GH_TOKEN env var for gh CLI compatibility: Added GH_TOKEN env var for gh CLI compatibility",
|
|
175
|
+
"raw": {
|
|
176
|
+
"question": "Added GH_TOKEN env var for gh CLI compatibility",
|
|
177
|
+
"chosen": "Added GH_TOKEN env var for gh CLI compatibility",
|
|
178
|
+
"alternatives": [],
|
|
179
|
+
"reasoning": "gh CLI uses GH_TOKEN not GITHUB_TOKEN; added to all provisioners (Fly.io, Railway, Docker)"
|
|
180
|
+
},
|
|
181
|
+
"significance": "high"
|
|
182
|
+
},
|
|
183
|
+
{
|
|
184
|
+
"ts": 1767635959214,
|
|
185
|
+
"type": "decision",
|
|
186
|
+
"content": "Fixed mobile usability issues in dashboard: Fixed mobile usability issues in dashboard",
|
|
187
|
+
"raw": {
|
|
188
|
+
"question": "Fixed mobile usability issues in dashboard",
|
|
189
|
+
"chosen": "Fixed mobile usability issues in dashboard",
|
|
190
|
+
"alternatives": [],
|
|
191
|
+
"reasoning": "Hamburger menu visibility, logs button always visible on mobile, responsive padding throughout"
|
|
192
|
+
},
|
|
193
|
+
"significance": "high"
|
|
194
|
+
}
|
|
195
|
+
],
|
|
196
|
+
"endedAt": "2026-01-05T21:10:34.744Z"
|
|
197
|
+
}
|
|
198
|
+
],
|
|
199
|
+
"commits": [],
|
|
200
|
+
"filesChanged": [],
|
|
201
|
+
"projectId": "/Users/khaliqgant/Projects/agent-workforce/relay",
|
|
202
|
+
"tags": [],
|
|
203
|
+
"completedAt": "2026-01-05T21:10:34.744Z",
|
|
204
|
+
"retrospective": {
|
|
205
|
+
"summary": "Previous session work on provider CLI auth flow",
|
|
206
|
+
"approach": "Standard approach",
|
|
207
|
+
"confidence": 0.7
|
|
208
|
+
}
|
|
209
|
+
}
|
|
@@ -0,0 +1,97 @@
|
|
|
1
|
+
# Trajectory: Provider CLI auth flow for cloud workspaces
|
|
2
|
+
|
|
3
|
+
> **Status:** ✅ Completed
|
|
4
|
+
> **Task:** pre-launch-fixes
|
|
5
|
+
> **Confidence:** 70%
|
|
6
|
+
> **Started:** January 4, 2026 at 01:05 AM
|
|
7
|
+
> **Completed:** January 5, 2026 at 10:10 PM
|
|
8
|
+
|
|
9
|
+
---
|
|
10
|
+
|
|
11
|
+
## Summary
|
|
12
|
+
|
|
13
|
+
Previous session work on provider CLI auth flow
|
|
14
|
+
|
|
15
|
+
**Approach:** Standard approach
|
|
16
|
+
|
|
17
|
+
---
|
|
18
|
+
|
|
19
|
+
## Key Decisions
|
|
20
|
+
|
|
21
|
+
### Pre-seed Claude CLI config to skip interactive setup
|
|
22
|
+
- **Chose:** Pre-seed Claude CLI config to skip interactive setup
|
|
23
|
+
- **Reasoning:** Claude CLI has interactive first-run (theme selection, etc). Alternative was web terminal (xterm.js) which is more flexible but complex. Pre-seeding config is simpler for MVP. May revisit for web terminal if other CLIs have similar issues.
|
|
24
|
+
|
|
25
|
+
### Add settings page for CLI provider management
|
|
26
|
+
- **Chose:** Add settings page for CLI provider management
|
|
27
|
+
- **Reasoning:** Users should be able to connect additional AI providers after initial setup. Settings page in workspace dashboard will allow connecting Claude, Codex, OpenCode, Droid at any time, not just during initial workspace setup.
|
|
28
|
+
|
|
29
|
+
### Default trajectories to opt-out (user-level storage)
|
|
30
|
+
- **Chose:** Default trajectories to opt-out (user-level storage)
|
|
31
|
+
- **Reasoning:** Most repos won't want trajectory files in source control. Users must explicitly opt-in to store in repo via .relay/config.json
|
|
32
|
+
|
|
33
|
+
### Store user-level trajectories in ~/.config/agent-relay/trajectories/<project-hash>/
|
|
34
|
+
- **Chose:** Store user-level trajectories in ~/.config/agent-relay/trajectories/<project-hash>/
|
|
35
|
+
- **Reasoning:** XDG-compliant path, project-isolated via hash to prevent collisions, survives repo deletion
|
|
36
|
+
|
|
37
|
+
### Trajectory settings configurable after GitHub app setup
|
|
38
|
+
- **Chose:** Trajectory settings configurable after GitHub app setup
|
|
39
|
+
- **Reasoning:** Users should configure .relay/config.json after connecting repo to cloud workspace. This happens in the workspace onboarding flow.
|
|
40
|
+
|
|
41
|
+
### Add dashboard API for trajectory preferences
|
|
42
|
+
- **Chose:** Add dashboard API for trajectory preferences
|
|
43
|
+
- **Reasoning:** Users configure via dashboard after GitHub app setup, during workspace onboarding
|
|
44
|
+
|
|
45
|
+
### Add comprehensive settings with trajectory explanations
|
|
46
|
+
- **Chose:** Add comprehensive settings with trajectory explanations
|
|
47
|
+
- **Reasoning:** Users need to understand what trajectories are (PDERO paradigm), why they'd opt-in, and link to pdero.com for more info
|
|
48
|
+
|
|
49
|
+
### Investigate Claude OAuth login flow
|
|
50
|
+
- **Chose:** Investigate Claude OAuth login flow
|
|
51
|
+
- **Reasoning:** Current provider setup uses API keys but Claude uses OAuth. Need to bypass interactive prompts and get login URL for popup-based auth.
|
|
52
|
+
|
|
53
|
+
### Cloud provider auth strategy for Claude
|
|
54
|
+
- **Chose:** Cloud provider auth strategy for Claude
|
|
55
|
+
- **Reasoning:** Claude uses OAuth in cloud environments. For users connecting accounts: 1) API key works (already supported), 2) CLI setup-token is interactive, 3) Need proper OAuth device flow from Anthropic. Recommend API key for now with improved UX.
|
|
56
|
+
|
|
57
|
+
### Use node-pty for CLI OAuth flow
|
|
58
|
+
- **Chose:** Use node-pty for CLI OAuth flow
|
|
59
|
+
- **Reasoning:** Regular spawn with pipes doesn't properly emulate TTY, causing CLIs to behave differently. PTY ensures auth URLs are output correctly and allows sending responses to interactive prompts.
|
|
60
|
+
|
|
61
|
+
### Auto-respond to Claude interactive setup prompts
|
|
62
|
+
- **Chose:** Auto-respond to Claude interactive setup prompts
|
|
63
|
+
- **Reasoning:** Claude has multi-step setup: dark mode -> auth method -> login URL. We detect prompts and send enter key to progress through them automatically.
|
|
64
|
+
|
|
65
|
+
### Fixed cloud server body limit for screenshot uploads
|
|
66
|
+
- **Chose:** Fixed cloud server body limit for screenshot uploads
|
|
67
|
+
- **Reasoning:** Default express.json limit of 100kb was too small for base64 encoded images
|
|
68
|
+
|
|
69
|
+
### Added GH_TOKEN env var for gh CLI compatibility
|
|
70
|
+
- **Chose:** Added GH_TOKEN env var for gh CLI compatibility
|
|
71
|
+
- **Reasoning:** gh CLI uses GH_TOKEN not GITHUB_TOKEN; added to all provisioners (Fly.io, Railway, Docker)
|
|
72
|
+
|
|
73
|
+
### Fixed mobile usability issues in dashboard
|
|
74
|
+
- **Chose:** Fixed mobile usability issues in dashboard
|
|
75
|
+
- **Reasoning:** Hamburger menu visibility, logs button always visible on mobile, responsive padding throughout
|
|
76
|
+
|
|
77
|
+
---
|
|
78
|
+
|
|
79
|
+
## Chapters
|
|
80
|
+
|
|
81
|
+
### 1. Work
|
|
82
|
+
*Agent: default*
|
|
83
|
+
|
|
84
|
+
- Pre-seed Claude CLI config to skip interactive setup: Pre-seed Claude CLI config to skip interactive setup
|
|
85
|
+
- Add settings page for CLI provider management: Add settings page for CLI provider management
|
|
86
|
+
- Default trajectories to opt-out (user-level storage): Default trajectories to opt-out (user-level storage)
|
|
87
|
+
- Store user-level trajectories in ~/.config/agent-relay/trajectories/<project-hash>/: Store user-level trajectories in ~/.config/agent-relay/trajectories/<project-hash>/
|
|
88
|
+
- Trajectory settings configurable after GitHub app setup: Trajectory settings configurable after GitHub app setup
|
|
89
|
+
- Add dashboard API for trajectory preferences: Add dashboard API for trajectory preferences
|
|
90
|
+
- Add comprehensive settings with trajectory explanations: Add comprehensive settings with trajectory explanations
|
|
91
|
+
- Investigate Claude OAuth login flow: Investigate Claude OAuth login flow
|
|
92
|
+
- Cloud provider auth strategy for Claude: Cloud provider auth strategy for Claude
|
|
93
|
+
- Use node-pty for CLI OAuth flow: Use node-pty for CLI OAuth flow
|
|
94
|
+
- Auto-respond to Claude interactive setup prompts: Auto-respond to Claude interactive setup prompts
|
|
95
|
+
- Fixed cloud server body limit for screenshot uploads: Fixed cloud server body limit for screenshot uploads
|
|
96
|
+
- Added GH_TOKEN env var for gh CLI compatibility: Added GH_TOKEN env var for gh CLI compatibility
|
|
97
|
+
- Fixed mobile usability issues in dashboard: Fixed mobile usability issues in dashboard
|