codeScope is a cross-device companion for coding agents.
It lets you leave your computer, open your phone, and still see:
- which workspaces are active on a device
- which threads belong to each workspace
- what the user sent and what the agent replied
- whether a thread is running, waiting, blocked, completed, stale, or offline
- which project files can be browsed from mobile
The intended release model is:
device -> project -> thread -> message -> thread_state -> file browser
The primary product is not a raw session/event debugger. Legacy session and event views still exist for compatibility and debugging, but the release direction is workspace/thread/message first.
bridge/: local side-channel collector; discovers running agent processes and emits compatibility events plus partial semantic captureserver/: REST/WebSocket backend; derivesproject/thread/messageread models from the current ingestion pipelinemobile/: Flutter client; release-facing workspace, thread, message, file browser, and prompt flowsdoc/: architecture, roadmap, protocol, and maintenance documentsdocs/: auxiliary implementation notes generated during development
mobileprimary navigation is alreadyworkspace -> thread -> message.serverexposes release-facing APIs for:projectsproject threadsthread messagesthread prompt continuationproject file browserproject create thread
bridgeruns in side-channel discovery mode and does not require changing the user’s normal Codex or Claude startup workflow.bridgecan discover localcodex/claudeprocesses and collect compatibility-layer events.bridgehas semantic capture adapters for Codex and Claude transcript sources.thread_stateis already promoted beyond simple session status and supports:runningwaiting_promptwaiting_reviewcompletedblockedofflinestale
- release UX now shows:
- workspace created time
- workspace last activity time
- source agent badges such as
CodexandClaude - long-content drawers for long prompt/summary/message text
- friendlier prompt failure guidance when no writable local bridge session is online
threadexecution is release-facing, but it still resolves to a writable backingsessionunder the hood.- real message capture is much better than before, but it is still incomplete across all agents and all message shapes.
thread_stateis now a much clearer read-model state machine, but not yet a fully independent persisted runtime state store.- realtime list refresh still mixes stream updates with REST snapshot reloads.
- file content and message bodies are still primarily served through
server, not yet through directbridge <-> mobiletransport.
- formal
bridge <-> mobileP2P direct transport - relay fallback, reconnect, and replay
- fully complete real input/output capture for every supported agent and turn shape
- complete removal of the remaining execution-layer dependency on backing
session
These constraints are intentional and should not be reversed:
bridgestays a side-channel collector, not a managed launcherservershould default toward discovery, routing, and optional relay fallback, not a permanent content center- heartbeat, raw command lines, bridge observing hints, and low-level payloads belong to debug views, not the release main view
- message bodies, thread history, and file content should eventually prefer
bridge <-> mobiledirect transfer
cd server
go run ./cmd/servercd bridge
go run ./cmd/bridgecd mobile
flutter runcurl http://localhost:8080/api/health
curl http://localhost:8080/api/projects
curl http://localhost:8080/api/projects/<project-id>/threads
curl http://localhost:8080/api/threads/<thread-id>/messagesRun verification inside each module:
cd bridge
go test ./...
go build ./...
cd ../server
go test ./...
go build ./...
cd ../mobile
flutter testStart with these files:
doc/全局修改指南-AI-Agent协作基线.mddoc/重构方案-项目线程消息与P2P直连.mddoc/bridge/Bridge旁路采集需求重设计.mddoc/bridge-server-完整协议草案.mddoc/正式版本落地路线图.mddoc/执行提示词-正式版落地.md
- Complete real message capture across more agent transcript shapes.
- Continue reducing execution-layer dependence on backing
session. - Move message/file content toward direct
bridge <-> mobiletransport. - Implement P2P direct transport with relay fallback.





