diff --git a/agent-roadmap/ROADMAP.md b/agent-roadmap/ROADMAP.md index 668a921..1e58504 100644 --- a/agent-roadmap/ROADMAP.md +++ b/agent-roadmap/ROADMAP.md @@ -4,7 +4,7 @@ NomadCode는 Flutter 기반 앱, core 서비스, 공유 계약, agent-operation 규칙을 하나의 원레포로 묶어 AI-assisted development workflow를 조율하는 프로젝트다. -현재 로드맵은 `ROADMAP.md -> phase//PHASE.md -> phase//milestones/.md` scaffold를 기준으로 관리한다. React/Vite 웹 콘솔 제거, 서버/Plane/provider 기반 작업, Flutter-first 클라이언트 정리, Mattermost push plugin extraction, client integration 표준화, workspace 포트/환경 표준화, External Integration, Milestone Work Item Creation Sync, Plane Work Item Webhook Intake, Gito Branch Event Creation Sync Bridge, Gito proto-socket consumer wire readiness, Gito HTTP Webhook Consumer Readiness, Plane-Origin Authoring Roundtrip Sync, Roadmap Driven Agent-Ops Automation은 완료되었다. Agent-Ops MCP Control Plane에서는 다음 후보인 Milestone Execution Lifecycle Sync로 Todo 이후 실행 lifecycle을 다룬다. 외부 agent 제어 표면은 현재 확정 범위가 아니라 후속 스케치에서 검토한다. +현재 로드맵은 [ROADMAP.md](ROADMAP.md) -> [Agent-Ops Work Item Lifecycle PHASE.md](phase/agent-ops-work-item-lifecycle/PHASE.md) -> [Milestone Execution Lifecycle Sync](phase/agent-ops-work-item-lifecycle/milestones/milestone-execution-lifecycle-sync.md) 같은 scaffold를 기준으로 관리한다. React/Vite 웹 콘솔 제거, 서버/Plane/provider 기반 작업, Flutter-first 클라이언트 정리, Mattermost push plugin extraction, client integration 표준화, workspace 포트/환경 표준화, External Integration, Milestone Work Item Creation Sync, Plane Work Item Webhook Intake, Gito Branch Event Creation Sync Bridge, Gito proto-socket consumer wire readiness, Gito HTTP Webhook Consumer Readiness, Plane-Origin Authoring Roundtrip Sync, Roadmap Driven Agent-Ops Automation, Agent-Origin Milestone Creation Sync는 완료되었다. Agent-Ops Work Item Lifecycle에서는 다음 후보인 Milestone Execution Lifecycle Sync로 Todo 이후 실행 lifecycle을 다룬다. 외부 agent 제어 표면과 MCP 여부는 현재 ops 작업과 섞지 않고 별도 MCP Control Surface Phase로 분리해 가장 뒤의 스케치로 미룬다. IOP 외부 실행 호출은 OpenAI-compatible Responses API 방식을 기본 계약으로 채택하고, NomadCode/IOP 고유의 task, workspace, session, approval, artifact, notification 문맥은 별도 `iop` wrapper field가 아니라 `metadata` 확장으로 전달한다. A2A는 agent-to-agent delegation이 명확히 필요할 때 재검토하며, IOP native protocol은 NomadCode의 기본 외부 실행 호출 표면으로 쓰지 않는다. @@ -15,49 +15,52 @@ IOP 외부 실행 호출은 OpenAI-compatible Responses API 방식을 기본 계 검토중 또는 진행중 Phase는 계획 Phase보다 위에 두어, 아래로 갈수록 미래 계획에 가까워지게 정렬한다. - [완료] Server Skeleton - - 경로: `agent-roadmap/archive/phase/server-skeleton/PHASE.md` + - 경로: [Server Skeleton PHASE.md](archive/phase/server-skeleton/PHASE.md) - 요약: core 서버 실행 골격, task 저장 구조, 비동기 job 실행, Adapter stub을 구성했다. - [완료] Plane Communication Foundation - - 경로: `agent-roadmap/archive/phase/plane-communication-foundation/PHASE.md` + - 경로: [Plane Communication Foundation PHASE.md](archive/phase/plane-communication-foundation/PHASE.md) - 요약: Plane self-hosted 인스턴스와 통신하기 위한 인증, API client, 외부 참조 저장, smoke 검증 토대를 만들었다. - [완료] Client Platform Consolidation - - 경로: `agent-roadmap/archive/phase/client-platform-consolidation/PHASE.md` + - 경로: [Client Platform Consolidation PHASE.md](archive/phase/client-platform-consolidation/PHASE.md) - 요약: React/Vite 웹 콘솔을 제품 UI 경로에서 걷어내고 Flutter 앱을 NomadCode 클라이언트 source of truth로 정리했다. - [완료] Work Item Provider Pipeline Design - - 경로: `agent-roadmap/archive/phase/work-item-provider-pipeline-design/PHASE.md` + - 경로: [Work Item Provider Pipeline Design PHASE.md](archive/phase/work-item-provider-pipeline-design/PHASE.md) - 요약: Plane/Jira 등 work item provider와 core task 사이의 생성, enqueue, 상태 투영, 결과 발행 계약을 provider-neutral하게 정리했다. - [완료] Mattermost Push Plugin Extraction - - 경로: `agent-roadmap/archive/phase/mattermost-push-plugin-extraction/PHASE.md` + - 경로: [Mattermost Push Plugin Extraction PHASE.md](archive/phase/mattermost-push-plugin-extraction/PHASE.md) - 요약: Flutter 앱에 섞인 Mattermost push notification migration을 분리했고, 현재 package 경로는 `../nexo/packages/messaging_flutter`다. - [완료] Workflow Core - - 경로: `agent-roadmap/archive/phase/workflow-core/PHASE.md` + - 경로: [Workflow Core PHASE.md](archive/phase/workflow-core/PHASE.md) - 요약: proto-socket 내부 통신 레일을 정리한 뒤 client-core 통신과 실제 e2e 흐름을 기준으로 task lifecycle, retry, timeout, notification event를 안정화한다. - [완료] External Integration - - 경로: `agent-roadmap/archive/phase/external-integration/PHASE.md` + - 경로: [External Integration PHASE.md](archive/phase/external-integration/PHASE.md) - 요약: Plane 확장, Jira-compatible provider 추상화, Mattermost, Agent Integrator, IOP OpenAI-compatible Responses 호출 경계를 실제 통합 adapter 흐름으로 확장했고, metadata 실행 문맥 전달, IOP Edge `/v1/responses`, NomadCode Core 원격 create/enqueue/poll smoke를 완료했다. -- [진행중] Agent-Ops MCP Control Plane - - 경로: `agent-roadmap/phase/agent-ops-mcp-control-plane/PHASE.md` - - 요약: 로드맵 기반 agent-ops 운영 자동화와 Plane/Jira 같은 work item provider와 Milestone item의 양방향 동기화 도메인을 다룬다. Roadmap Driven Agent-Ops Automation까지 완료/archive했고, 다음 후보는 Milestone Execution Lifecycle Sync다. 외부 agent 제어 표면은 후속 스케치 항목으로 보류한다. +- [진행중] Agent-Ops Work Item Lifecycle + - 경로: [Agent-Ops Work Item Lifecycle PHASE.md](phase/agent-ops-work-item-lifecycle/PHASE.md) + - 요약: 로드맵 기반 agent-ops 운영 자동화와 Plane/Jira 같은 work item provider의 Todo 이후 실행 lifecycle을 다룬다. 다음 후보는 Milestone Execution Lifecycle Sync이며, MCP와 외부 agent 제어 표면은 이 Phase 범위에서 제외한다. - [계획] Project Workspace Management UX - - 경로: `agent-roadmap/phase/project-workspace-management-ux/PHASE.md` + - 경로: [Project Workspace Management UX PHASE.md](phase/project-workspace-management-ux/PHASE.md) - 요약: client integration 표준화, core workflow, 외부 통합 기준 이후 프로젝트 단위 앱 UX를 다루며, provider slot 기반 외부 console composition은 계획 후보로 둔다. +- [스케치] MCP Control Surface + - 경로: [MCP Control Surface PHASE.md](phase/mcp-control-surface/PHASE.md) + - 요약: 외부 agent 제어 표면을 MCP로 둘지 여부, tool policy, 권한, side effect 경계를 현재 ops lifecycle과 분리해 마지막 후보로 검토한다. ## 로딩 정책 -- 일반 작업에서는 `agent-roadmap/ROADMAP.md`를 매번 읽지 않는다. -- 기능 추가, 구조 변경, 스킬 추가/수정, 문서 구조 변경 작업을 수행할 때는 `agent-roadmap/current.md`를 먼저 읽는다. +- 일반 작업에서는 [ROADMAP.md](ROADMAP.md)를 매번 읽지 않는다. +- 기능 추가, 구조 변경, 스킬 추가/수정, 문서 구조 변경 작업을 수행할 때는 [current.md](current.md)를 먼저 읽는다. - `current.md`는 현재 작업 위치가 아니라 활성 Phase와 활성 Milestone 후보 목록이다. - `current.md`에는 개인별 현재 작업 위치나 완료 상태를 기록하지 않는다. -- `current.md`의 활성 Phase는 `agent-roadmap/phase//PHASE.md`를 가리킨다. -- `current.md`의 활성 Milestone은 `agent-roadmap/phase//milestones/.md`를 가리킨다. +- `current.md`의 활성 Phase는 [Agent-Ops Work Item Lifecycle PHASE.md](phase/agent-ops-work-item-lifecycle/PHASE.md)를 가리킨다. +- `current.md`의 활성 Milestone은 [Milestone Execution Lifecycle Sync](phase/agent-ops-work-item-lifecycle/milestones/milestone-execution-lifecycle-sync.md)를 가리킨다. - `current.md`는 `agent-roadmap/archive/**` 경로를 활성 항목으로 포함하지 않는다. - 요청 내용, 현재 브랜치, 변경 파일, 관련 코드 경로를 보고 가장 관련 있는 활성 Phase와 Milestone 문서를 같은 세션에서 1회 읽는다. - 활성 Phase 또는 Milestone 밖의 작업이면 이 문서의 Phase 흐름을 확인하고 사용자에게 진행 또는 전환 여부를 확인한다. - 이 문서는 로드맵 생성/갱신, Phase 전환, Phase 추가/수정, 전체 구조 변경 요청이 있을 때만 읽는다. - 상세 작업은 각 Milestone 문서의 `기능`으로 관리한다. 검증이 필요한 기능만 같은 Task 안에 `검증:`으로 통합한다. - 모든 기능 Task와 Task 안에 명시된 검증이 충족된 Milestone은 먼저 `[검토중]`으로 두고, 사용자 완료 확인과 archive 승인을 받은 뒤 `[완료]`로 전환한다. -- 완료된 Phase는 `agent-roadmap/archive/phase//PHASE.md`로 이동하고, 하위 Milestone도 같은 archive Phase scaffold 아래에 둔다. -- 진행중 Phase 안에서 완료된 Milestone은 활성 Phase 문서에 짧은 링크를 남기고, 상세 문서는 `agent-roadmap/archive/phase//milestones/`로 이동한다. +- 완료된 Phase는 archive의 해당 PHASE 문서로 이동하고, 하위 Milestone도 같은 archive Phase scaffold 아래에 둔다. +- 진행중 Phase 안에서 완료된 Milestone은 활성 Phase 문서에 짧은 링크를 남기고, 상세 문서는 해당 archive milestones 디렉터리로 이동한다. - archive `PHASE.md`는 Phase 자체가 완료 또는 폐기될 때만 만들며, 진행중 Phase의 완료 Milestone만 archive된 경우 archive Phase 디렉터리에 `milestones/`만 있을 수 있다. - `agent-roadmap/archive/**`는 일반 작업에서 읽지 않는다. 과거 완료 내용, 완료 근거, 복원, 비교가 필요한 경우에만 `ROADMAP.md` 또는 `PHASE.md`의 archive 링크를 따라가서 읽는다. - 아카이브된 Phase/Milestone 문서는 최신 템플릿이나 스킬 규약에 맞춰 재포맷하지 않는다. diff --git a/agent-roadmap/phase/agent-ops-mcp-control-plane/PHASE.md b/agent-roadmap/phase/agent-ops-work-item-lifecycle/PHASE.md similarity index 53% rename from agent-roadmap/phase/agent-ops-mcp-control-plane/PHASE.md rename to agent-roadmap/phase/agent-ops-work-item-lifecycle/PHASE.md index 2e92ab9..690751c 100644 --- a/agent-roadmap/phase/agent-ops-mcp-control-plane/PHASE.md +++ b/agent-roadmap/phase/agent-ops-work-item-lifecycle/PHASE.md @@ -1,4 +1,4 @@ -# Phase: Agent-Ops MCP Control Plane +# Phase: Agent-Ops Work Item Lifecycle ## 상태 @@ -6,7 +6,7 @@ ## 목표 -로드맵 기반 agent-ops 운영 루프와 Plane/Jira 같은 work item provider와 Milestone item의 양방향 동기화 도메인을 Core action 경계로 정리한다. 외부 agent 제어 표면은 현재 확정하지 않고 후속 스케치로 분리한다. 현재는 Agent-Origin Milestone Creation Sync까지 완료/archive했고, 다음 후보는 사용자가 명시적으로 잠금 해제하기 전까지 계획 상태의 Milestone Execution Lifecycle Sync다. +로드맵 기반 agent-ops 운영 루프에서 Plane/Jira 같은 work item provider의 `Todo` 이후 실행 lifecycle을 Core action 경계로 정리한다. Milestone Task, provider 하위 티켓, `agent-task/m-` plan/code-review 결과, 사용자 리뷰와 종료 흐름을 연결하되, MCP와 외부 agent 제어 표면은 이 Phase 범위에서 제외한다. ## Milestone 흐름 @@ -15,54 +15,50 @@ 스케치 Milestone은 아직 구현 가능한 계획이 아니므로 계획 Milestone보다 아래에 둔다. - [완료] 워크스페이스 포트/환경 표준화 - - 경로: `agent-roadmap/archive/phase/agent-ops-mcp-control-plane/milestones/workspace-port-env-standardization.md` + - 경로: [워크스페이스 포트/환경 표준화](../../archive/phase/agent-ops-mcp-control-plane/milestones/workspace-port-env-standardization.md) - 요약: NomadCode client/core/compose/test runner 포트와 IOP Edge 연동 endpoint를 workspace 공통 대역과 remote runner 문서 기준으로 정리하고, remote code-server preview 정상 노출 확인 후 archive했다. - [완료] Milestone Work Item Creation Sync - - 경로: `agent-roadmap/archive/phase/agent-ops-mcp-control-plane/milestones/milestone-work-item-creation-sync.md` + - 경로: [Milestone Work Item Creation Sync](../../archive/phase/agent-ops-mcp-control-plane/milestones/milestone-work-item-creation-sync.md) - 요약: Plane-origin 방식으로 Milestone을 생성하고 Plane Todo 티켓까지 동기화한 뒤 멈추는 마일스톤이다. 12/13/14번 task group의 `Roadmap Completion` 근거로 live-cycle gate 보완 Task까지 완료했고, 사용자 승인 후 archive했다. - [완료] Plane Work Item Webhook Intake - - 경로: `agent-roadmap/archive/phase/agent-ops-mcp-control-plane/milestones/plane-work-item-webhook-intake.md` + - 경로: [Plane Work Item Webhook Intake](../../archive/phase/agent-ops-mcp-control-plane/milestones/plane-work-item-webhook-intake.md) - 요약: Plane work item 생성, 상태 변경, assignee 변경 webhook을 NomadCode Core가 받아 `Backlog + AGENT assignee` 조건을 재검증하고 기존 Milestone creation sync pipeline을 시작하도록 연결했다. 코드 레벨 재검토와 사용자 종료 승인 후 archive했다. - [완료] Gito Branch Event Creation Sync Bridge - - 경로: `agent-roadmap/archive/phase/agent-ops-mcp-control-plane/milestones/gito-branch-event-creation-sync-bridge.md` + - 경로: [Gito Branch Event Creation Sync Bridge](../../archive/phase/agent-ops-mcp-control-plane/milestones/gito-branch-event-creation-sync-bridge.md) - 요약: Gito `branch.updated` wakeup을 NomadCode core가 소비하고 target branch 재검증/스캔 뒤 creation sync job으로 enqueue하는 bridge를 구현했다. 코드 레벨 종료 검토에서 roadmap milestone path가 없는 event drop을 보강하고 archive했다. - [완료] Gito Proto-Socket Consumer Wire Readiness - - 경로: `agent-roadmap/archive/phase/agent-ops-mcp-control-plane/milestones/gito-protosocket-consumer-wire-readiness.md` + - 경로: [Gito Proto-Socket Consumer Wire Readiness](../../archive/phase/agent-ops-mcp-control-plane/milestones/gito-protosocket-consumer-wire-readiness.md) - 요약: NomadCode/Gito 연동 MVP의 Gito `/proto-socket` binary transport/decode, bridge e2e, failure/reconnect 운영 기준 검증을 완료했고, 사용자 승인 후 archive했다. - [완료] Gito HTTP Webhook Consumer Readiness - - 경로: `agent-roadmap/archive/phase/agent-ops-mcp-control-plane/milestones/gito-http-webhook-consumer-readiness.md` + - 경로: [Gito HTTP Webhook Consumer Readiness](../../archive/phase/agent-ops-mcp-control-plane/milestones/gito-http-webhook-consumer-readiness.md) - 요약: Gito `gito.forgejo-branch-events.v1` signed HTTP webhook delivery를 NomadCode Core가 소비하고 branch revision 재검증/creation sync enqueue로 수렴하는 구현을 코드 레벨 종료 감사와 소규모 계약 보강 후 archive했다. - [완료] Plane-Origin Authoring Roundtrip Sync - - 경로: `agent-roadmap/archive/phase/agent-ops-mcp-control-plane/milestones/plane-origin-authoring-roundtrip-sync.md` + - 경로: [Plane-Origin Authoring Roundtrip Sync](../../archive/phase/agent-ops-mcp-control-plane/milestones/plane-origin-authoring-roundtrip-sync.md) - 요약: 최신 dev IOP Responses, workspace slot, Gito HTTP webhook, filename slug canonical id, active Milestone reconcile, Plane 생성/갱신 기준의 기능 Task와 live 검증을 완료했고 코드 레벨 종료 감사 후 archive했다. - [완료] Roadmap Driven Agent-Ops Automation - - 경로: `agent-roadmap/archive/phase/agent-ops-mcp-control-plane/milestones/roadmap-driven-agent-ops-automation.md` + - 경로: [Roadmap Driven Agent-Ops Automation](../../archive/phase/agent-ops-mcp-control-plane/milestones/roadmap-driven-agent-ops-automation.md) - 요약: roadmap/action core와 Plane/Jira 기반 Milestone item 동기화의 상위 방향과 계약 후보를 정리했고, 코드 레벨 종료 검토 후 archive했다. - [완료] Agent-Origin Milestone Creation Sync - - 경로: `agent-roadmap/archive/phase/agent-ops-mcp-control-plane/milestones/agent-origin-milestone-creation-sync.md` + - 경로: [Agent-Origin Milestone Creation Sync](../../archive/phase/agent-ops-mcp-control-plane/milestones/agent-origin-milestone-creation-sync.md) - 요약: agent 또는 사람이 active Milestone을 직접 수정해 `develop`에 push한 경우 Gito revision 검증 후 Plane work item 생성/갱신, provider identity ledger 기록, identity backfill commit/push, self-loop guard까지 닫고 코드 레벨 종료 감사 후 archive했다. - [계획] Milestone Execution Lifecycle Sync - - 경로: `agent-roadmap/phase/agent-ops-mcp-control-plane/milestones/milestone-execution-lifecycle-sync.md` - - 요약: Todo 이후 In Progress 실행, 하위 티켓, plan/code-review, 완료/폐기 흐름은 Agent-Origin Milestone Creation Sync 이후 사용자가 명시적으로 해제할 때까지 구현 잠금 상태로 둔다. - -- [스케치] MCP Control Surface Sketch - - 경로: `agent-roadmap/phase/agent-ops-mcp-control-plane/milestones/mcp-control-surface-sketch.md` - - 요약: 외부 agent 제어 표면을 MCP로 둘지 여부와 tool policy, 권한, side effect 경계를 현재 sync/action core 정리 이후 검토할 후보 항목으로 보류한다. + - 경로: [Milestone Execution Lifecycle Sync](milestones/milestone-execution-lifecycle-sync.md) + - 요약: Todo 이후 In Progress 실행, 하위 티켓, plan/code-review, 완료/폐기 흐름은 사용자가 명시적으로 해제할 때까지 구현 잠금 상태로 둔다. ## Phase 경계 -- 이 Phase는 현재 Workflow Core 구현의 선행 조건이 아니다. -- Core task lifecycle, proto-socket client-core 통신, provider adapter 기본 통합, Flutter workbench UX가 먼저 닫힌 뒤 진행한다. -- Plane/Jira work item과 agent-roadmap Milestone item의 양방향 동기화는 별도 Core sync domain이 소유하며, provider adapter 세부 구현과 분리한다. -- Sync는 Plane/Jira provider project 단위 project sync 설정을 통해 provider project target, git remote, 실제 작업 workspace를 확정한 뒤 진행한다. -- 외부 agent 제어 표면, tool policy, roadmap/action side effect 제어는 후속 스케치에서만 검토하며 현재 진행 마일스톤의 확정 범위가 아니다. +- 이 Phase는 Plane/Jira work item과 agent-roadmap Milestone Task의 실행 lifecycle 동기화만 다룬다. +- `Todo -> In Progress` 실행 승인, 하위 티켓 identity, `agent-task/m-` plan/code-review 결과 반영, 사용자 리뷰와 종료 흐름이 이 Phase의 책임이다. +- 완료된 선행 Milestone의 archive 파일은 Phase 분리 전 historical path인 [agent-ops-mcp-control-plane milestones archive](../../archive/phase/agent-ops-mcp-control-plane/milestones/)에 보존한다. +- MCP, 외부 agent 제어 표면, tool policy, 외부 호출 권한, side effect 승인 경계는 `MCP Control Surface` Phase에서 별도로 다룬다. +- 프로젝트/워크스페이스 UX와 provider console composition은 `Project Workspace Management UX` Phase에서 다룬다. - IOP 내부 모델 라우팅, RAG, context compression, output validation은 NomadCode 범위에서 제외한다. diff --git a/agent-roadmap/phase/agent-ops-mcp-control-plane/milestones/milestone-execution-lifecycle-sync.md b/agent-roadmap/phase/agent-ops-work-item-lifecycle/milestones/milestone-execution-lifecycle-sync.md similarity index 91% rename from agent-roadmap/phase/agent-ops-mcp-control-plane/milestones/milestone-execution-lifecycle-sync.md rename to agent-roadmap/phase/agent-ops-work-item-lifecycle/milestones/milestone-execution-lifecycle-sync.md index 42f40fd..6354161 100644 --- a/agent-roadmap/phase/agent-ops-mcp-control-plane/milestones/milestone-execution-lifecycle-sync.md +++ b/agent-roadmap/phase/agent-ops-work-item-lifecycle/milestones/milestone-execution-lifecycle-sync.md @@ -3,8 +3,8 @@ ## 위치 -- Roadmap: `agent-roadmap/ROADMAP.md` -- Phase: `agent-roadmap/phase/agent-ops-mcp-control-plane/PHASE.md` +- Roadmap: [ROADMAP.md](../../../ROADMAP.md) +- Phase: [Agent-Ops Work Item Lifecycle PHASE.md](../PHASE.md) ## 목표 @@ -65,5 +65,6 @@ Todo 이후 실행 lifecycle을 Plane 하위 티켓, Milestone Task, agent-task - 선행 작업: `Roadmap Driven Agent-Ops Automation`, `Agent-Origin Milestone Creation Sync` - 잠금 해제 조건: 사용자가 명시적으로 이 마일스톤의 잠금 해제를 요청한다. - 현재 지점: agent-origin 생성 동기화가 닫히고 사용자가 명시적으로 잠금 해제를 요청하기 전까지 실행하지 않는 후속 마일스톤이다. +- MCP 분리: 외부 agent 제어 표면과 MCP 채택 여부는 [MCP Control Surface PHASE.md](../../mcp-control-surface/PHASE.md)로 분리했으며 이 마일스톤의 실행 lifecycle 범위에 포함하지 않는다. - 확인 필요: - [ ] 잠금 해제 후 `Todo -> In Progress` 이후 범위를 다시 확인한다. diff --git a/agent-roadmap/phase/mcp-control-surface/PHASE.md b/agent-roadmap/phase/mcp-control-surface/PHASE.md new file mode 100644 index 0000000..44a7013 --- /dev/null +++ b/agent-roadmap/phase/mcp-control-surface/PHASE.md @@ -0,0 +1,26 @@ +# Phase: MCP Control Surface + +## 상태 + +[스케치] + +## 목표 + +외부 agent가 NomadCode Core를 제어하는 표면을 MCP로 둘지 여부를 현재 agent-ops lifecycle 작업과 분리해 나중에 검토한다. 이 Phase는 현재 실행 후보가 아니며, ops lifecycle과 프로젝트 UX가 정리된 뒤 tool policy, 권한, side effect, audit 경계를 독립적으로 판단하기 위한 마지막 스케치 후보로 둔다. + +## Milestone 흐름 + +완료된 Milestone은 archive 경로를 가리키고, 검토중, 진행중, 계획, 스케치 또는 보류 Milestone은 이 Phase 하위 `milestones/` 경로를 가리킨다. +완료, 검토중, 진행중, 계획, 스케치 순서로 두어 아래로 갈수록 미래 작업에 가까워지게 정렬한다. +스케치 Milestone은 아직 구현 가능한 계획이 아니므로 계획 Milestone보다 아래에 둔다. + +- [스케치] MCP Control Surface Sketch + - 경로: [MCP Control Surface Sketch](milestones/mcp-control-surface-sketch.md) + - 요약: 외부 agent 제어 표면을 MCP로 둘지 여부와 tool policy, 권한, side effect 경계를 현재 ops 작업과 분리해 가장 뒤에서 검토한다. + +## Phase 경계 + +- 이 Phase는 MCP 채택 여부와 외부 agent 제어 표면의 책임 경계만 다룬다. +- 현재 `Agent-Ops Work Item Lifecycle` Phase의 실행 lifecycle, provider 하위 티켓, plan/code-review 상태 동기화 범위와 섞지 않는다. +- MCP server 구현, Core action API 확정, 인증/권한 구현은 스케치 승격 전에는 진행하지 않는다. +- MCP, HTTP, CLI/internal command 같은 후보를 비교하고, 채택 시 별도 계획 Milestone으로 자를 수 있을 때만 구현 후보로 승격한다. diff --git a/agent-roadmap/phase/agent-ops-mcp-control-plane/milestones/mcp-control-surface-sketch.md b/agent-roadmap/phase/mcp-control-surface/milestones/mcp-control-surface-sketch.md similarity index 74% rename from agent-roadmap/phase/agent-ops-mcp-control-plane/milestones/mcp-control-surface-sketch.md rename to agent-roadmap/phase/mcp-control-surface/milestones/mcp-control-surface-sketch.md index 4729411..2f3445d 100644 --- a/agent-roadmap/phase/agent-ops-mcp-control-plane/milestones/mcp-control-surface-sketch.md +++ b/agent-roadmap/phase/mcp-control-surface/milestones/mcp-control-surface-sketch.md @@ -2,12 +2,12 @@ ## 위치 -- Roadmap: `agent-roadmap/ROADMAP.md` -- Phase: `agent-roadmap/phase/agent-ops-mcp-control-plane/PHASE.md` +- Roadmap: [ROADMAP.md](../../../ROADMAP.md) +- Phase: [MCP Control Surface PHASE.md](../PHASE.md) ## 목표 -외부 agent가 NomadCode Core를 제어하는 표면을 MCP로 둘지 여부를 나중에 검토할 스케치로 보류한다. 현재 확정된 구현 범위가 아니며, Roadmap Driven Agent-Ops Automation과 이후 lifecycle sync에서 Core action, sync domain, review gate 경계가 더 분명해진 뒤 채택 여부와 구현 단위를 판단한다. +외부 agent가 NomadCode Core를 제어하는 표면을 MCP로 둘지 여부를 현재 agent-ops lifecycle 작업과 분리해 나중에 검토할 스케치로 보류한다. 현재 확정된 구현 범위가 아니며, ops lifecycle과 프로젝트 UX가 정리된 뒤 채택 여부와 구현 단위를 판단한다. ## 상태 @@ -62,11 +62,11 @@ - MCP server 구현 - Core action 구현 또는 HTTP API 변경 - provider sync 동작 변경 -- 현재 진행중 Milestone의 완료 조건 변경 +- 현재 진행중 ops lifecycle Milestone의 완료 조건 변경 ## 작업 컨텍스트 -- 이 항목은 완료된 Roadmap Driven Agent-Ops Automation에서 제외한 MCP 관련 내용을 나중에 검토하기 위한 스케치다. -- 선행 후보: Roadmap Driven Agent-Ops Automation, Milestone Execution Lifecycle Sync +- 이 항목은 현재 [Agent-Ops Work Item Lifecycle PHASE.md](../../agent-ops-work-item-lifecycle/PHASE.md)와 분리한 MCP 관련 내용을 가장 뒤에서 검토하기 위한 스케치다. +- 선행 후보: [Milestone Execution Lifecycle Sync](../../agent-ops-work-item-lifecycle/milestones/milestone-execution-lifecycle-sync.md), [Project Workspace Management UX](../../project-workspace-management-ux/milestones/project-workspace-management-ux.md) - 관련 경로 후보: `services/core/internal/http/`, `packages/contracts/`, `agent-roadmap/` - 확인 필요: 외부 agent 제어 표면이 실제로 필요한지, 필요하다면 MCP가 NomadCode의 기본 표면이어야 하는지 diff --git a/agent-roadmap/phase/project-workspace-management-ux/PHASE.md b/agent-roadmap/phase/project-workspace-management-ux/PHASE.md index cbac1f4..5359829 100644 --- a/agent-roadmap/phase/project-workspace-management-ux/PHASE.md +++ b/agent-roadmap/phase/project-workspace-management-ux/PHASE.md @@ -14,15 +14,15 @@ Flutter-first 클라이언트 구조 위에서 `apps/client` 모듈, web/mobile 완료, 검토중, 진행중, 계획 순서로 두어 아래로 갈수록 미래 작업에 가까워지게 정렬한다. - [완료] Client Integration Standardization - - 경로: `agent-roadmap/archive/phase/project-workspace-management-ux/milestones/client-integration-standardization.md` + - 경로: [Client Integration Standardization](../../archive/phase/project-workspace-management-ux/milestones/client-integration-standardization.md) - 요약: NomadCode client를 기준으로 `apps/client` 모듈명, Web + Android 우선 bootstrap, proto-socket, Mattermost push host integration, cloning handoff를 표준화했다. - [계획] Workbench Provider Slot Composition - - 경로: `agent-roadmap/phase/project-workspace-management-ux/milestones/workbench-provider-slot-composition.md` + - 경로: [Workbench Provider Slot Composition](milestones/workbench-provider-slot-composition.md) - 요약: 상단 titlebar와 우측 icon rail 기반 workbench를 유지하면서 IOP/OTO 같은 외부 Flutter console을 provider slot으로 등록, 삽입, 제거할 수 있는 구조로 정리한다. - [계획] Project Workspace Management UX - - 경로: `agent-roadmap/phase/project-workspace-management-ux/milestones/project-workspace-management-ux.md` + - 경로: [Project Workspace Management UX](milestones/project-workspace-management-ux.md) - 요약: 프로젝트 단위 제어 UX의 desktop/mobile 역할, parity 기준, IOP/task 결과 표시 기준을 정리하는 계획 후보다. ## Phase 경계 diff --git a/agent-roadmap/phase/project-workspace-management-ux/milestones/project-workspace-management-ux.md b/agent-roadmap/phase/project-workspace-management-ux/milestones/project-workspace-management-ux.md index 1441ed7..42b8006 100644 --- a/agent-roadmap/phase/project-workspace-management-ux/milestones/project-workspace-management-ux.md +++ b/agent-roadmap/phase/project-workspace-management-ux/milestones/project-workspace-management-ux.md @@ -2,8 +2,8 @@ ## 위치 -- Roadmap: `agent-roadmap/ROADMAP.md` -- Phase: `agent-roadmap/phase/project-workspace-management-ux/PHASE.md` +- Roadmap: [ROADMAP.md](../../../ROADMAP.md) +- Phase: [Project Workspace Management UX PHASE.md](../PHASE.md) ## 목표 @@ -66,5 +66,5 @@ Flutter-first 앱에서 project/session/workspace 제어 표면과 desktop/mobil - 전환 참고 경로: [Legacy/Retired] `apps/web/` (제거됨) - 선행 작업: Flutter-first Client Consolidation, Client Integration Standardization, External Integration - 후속 작업: 확인 필요 -- 현재 지점: Workbench Provider Slot Composition을 최우선 진행중 마일스톤으로 전환하면서 이 마일스톤은 계획 후보로 내려둔다. `구현 잠금`은 유지되며, 프로젝트 단위 제어 화면의 공통 기능/우선순위, desktop/mobile 역할 경계, IOP/task 결과 UX 투영 기준 결정이 선행되어야 한다. +- 현재 지점: [Workbench Provider Slot Composition](workbench-provider-slot-composition.md)을 최우선 진행중 마일스톤으로 전환하면서 이 마일스톤은 계획 후보로 내려둔다. `구현 잠금`은 유지되며, 프로젝트 단위 제어 화면의 공통 기능/우선순위, desktop/mobile 역할 경계, IOP/task 결과 UX 투영 기준 결정이 선행되어야 한다. - 확인 필요: `구현 잠금`의 결정 필요 항목 참고. diff --git a/agent-roadmap/phase/project-workspace-management-ux/milestones/workbench-provider-slot-composition.md b/agent-roadmap/phase/project-workspace-management-ux/milestones/workbench-provider-slot-composition.md index 2a0bcf1..31b75f2 100644 --- a/agent-roadmap/phase/project-workspace-management-ux/milestones/workbench-provider-slot-composition.md +++ b/agent-roadmap/phase/project-workspace-management-ux/milestones/workbench-provider-slot-composition.md @@ -2,8 +2,8 @@ ## 위치 -- Roadmap: `agent-roadmap/ROADMAP.md` -- Phase: `agent-roadmap/phase/project-workspace-management-ux/PHASE.md` +- Roadmap: [ROADMAP.md](../../../ROADMAP.md) +- Phase: [Project Workspace Management UX PHASE.md](../PHASE.md) ## 목표 @@ -90,7 +90,7 @@ IOP와 OTO 관리는 webview나 별도 앱이 아니라 각 repository의 embedd - 표준선(선택): 외부 제품 UI는 provider adapter/composition layer에서만 import하고, default build는 외부 제품 package 없이 빌드 가능해야 한다. - 표준선(선택): Agent shell은 공통 package, NomadCode/IOP/OTO는 각각 capability pack으로 조립한다. - 완료 근거(2026-06-07): `[workbench-shell]`은 `apps/client/lib/src/app/nomadcode_workbench_shell.dart`와 `apps/client/test/widget_test.dart`의 right rail, Agent dock, IOP/Workflow section 전환, narrow/wide layout rect 검증으로 확인했다. 검증: `cd apps/client && flutter test` PASS. -- 선행 작업: Client Integration Standardization, Project Workspace Management UX +- 선행 작업: [Client Integration Standardization](../../../archive/phase/project-workspace-management-ux/milestones/client-integration-standardization.md), [Project Workspace Management UX](project-workspace-management-ux.md) - 선행 확인 대상: `../iop/packages/flutter/iop_console/`, `../oto/packages/flutter/oto_console/` - 후속 작업: 실제 desktop/mobile project workspace 화면 구현, workflow/provider 관리 탭별 세부 content 구현 - 확인 필요: 후속 구현 계획에서 app/flavor/package 중 어떤 optional composition 방식을 택할지 확정한다.