- Add "/issue" as alias for "/issues" - Welcome banner: bold GITLINK TUI logo, project context, organized sections (Views/Actions/Shortcuts) - Tip line at bottom for discoverability Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com> |
||
|---|---|---|
| pkg | ||
| tui | ||
| CLAUDE.md | ||
| DESIGN.md | ||
| README.md | ||
| gitlink | ||
| gitlink-tui.log | ||
| go.mod | ||
| go.sum | ||
| main.go | ||
README.md
GitLink TUI
以 GitLink 为协作中枢的 Agentic Harness。
GitLink TUI 是一个 AI-native 的全链路软件工程工具,深度集成 GitLink 的所有能力(Issue、PR、CI/CD、Release、PM),让开发者通过终端 TUI 就能完成从需求到发布的完整开发流程。
核心定位
| 工具 | 交互范型 | AI 角色 |
|---|---|---|
| Claude Code | Chat-First | AI 是主角,人在旁指导 |
| Cursor | Editor-First | AI 是编辑器的增强 |
| GitLink TUI | View-First + AI | AI 是团队成员,可以操作项目视图 |
设计理念
- Harness 模式:借鉴 Claude Code 的 agentic harness 架构,LLM 负责 reasoning,Harness 提供 tools、permissions、hooks、sessions
- SDD (Specification-Driven Development):每个开发任务从 Spec 开始(验收标准 + 执行计划),AI 在 Spec 约束下迭代直到所有标准满足
- 意图驱动双路径:同一意图可走热键菜单(
Ctrl+A)或对话(AI Panel),两种表达,殊途同归 - GitLink-Native:issue/PR/CI/release/sprint 是内置第一公民,通过复用 gitlink-cli 实现零抽象层调用
架构
+====================================================================+
| GitLink TUI |
+====================================================================+
| UI Layer (Bubble Tea) |
| ┌─────────┐ ┌───────┐ ┌───────┐ ┌──────┐ ┌──────┐ ┌───────────┐ |
| │ Home │ │ Code │ │ Issue │ │ PR │ │ CI │ │ Release │ |
| │ Board │ │ View │ │ Board │ │ List │ │ Pipe │ │ Manager │ |
| └─────────┘ └───────┘ └───────┘ └──────┘ └──────┘ └───────────┘ |
+====================================================================+
| Agent Harness: Loop + Spec Engine + Tool Registry + Context |
+====================================================================+
| Tool Implementation: GitLink Tools + File Tools + Shell + Git |
+====================================================================+
| Infrastructure: State Store + Cache + Events + Permissions |
+====================================================================+
交互模型
一个键记住所有 AI 能力:Ctrl+A
不管在哪个视图,按同一个键。Agent 根据当前上下文动态生成操作菜单,Enter 直达最可能的选项。
Issue Detail → Ctrl+A PR Detail → Ctrl+A Code 选中 → Ctrl+A
┌────────────────────┐ ┌────────────────────┐ ┌────────────────────┐
│ > 🔨 Execute issue │ │ > 🔍 Review PR │ │ > 💡 Explain code │
│ 📝 Summarize │ │ 📝 Summarize │ │ 🔧 Refactor │
│ 🔍 Find related │ │ ⚠ Find issues │ │ 🧪 Add tests │
│ 💬 Draft reply │ │ 💬 Draft comment │ │ 🐛 Find bugs │
└────────────────────┘ └────────────────────┘ └────────────────────┘
同一意图也可通过 AI Panel(Ctrl+Space)打字表达 — 对话框和菜单框进入同一个 Agent Engine,效果完全相同。
全局热键
| 热键 | 功能 | 记忆技巧 |
|---|---|---|
Ctrl+A |
AI 操作(上下文感知菜单) | 唯一需要记住的 AI 键 |
Ctrl+Space |
展开/收起 AI Panel(自由对话) | |
Ctrl+P |
命令面板(搜索所有操作) | P = Palette |
? |
帮助 | 标准约定 |
导航用 j/k、Enter、Esc、/ — 所有 TUI 的标准约定。
视图
- Home (
1) — 项目仪表盘 + 入口向导 - Code (
2) — 文件树 + 语法高亮 + git status - Issues (
3) — Kanban 看板 + 详情 - PRs (
4) — PR 列表 + Diff 查看 - CI (
5) — 构建面板 + 日志 - Release (
6) — 发布管理 - PM (
7) — Sprint 视图 + 团队分布 + 周报生成
实现阶段
- Phase 1 — Harness Foundation:TUI 骨架、视图路由、权限系统
- Phase 2 — Code + Views:代码视图、Issue/PR/CI/Release 全视图
- Phase 3 — Agent + PM:Agent Loop、AI Panel、PM Dashboard、Execution Dashboard
- Phase 4 — SDD + Harness:Spec Engine、Hook 系统、Session 管理、Checkpointing
- Phase 5 — Polish:全局搜索、通知中心、主题优化
技术栈
- 语言:Go(复用 gitlink-cli 的 internal 包)
- TUI 框架:Bubble Tea + Lip Gloss + Bubbles
- LLM:Anthropic SDK + OpenAI-compatible
- 部署:单二进制
gitlink tui
开发进度
- Phase 1 — Harness Foundation:TUI 骨架、视图路由、状态管理
- Phase 2 — Code + Views
- Phase 3 — Agent + PM
- Phase 4 — SDD + Harness
- Phase 5 — Polish
源码位于 gitlink-cli 项目的 tui/ 目录下,复用其 internal 包。
启动方式:gitlink-cli tui
完整设计文档见 DESIGN.md