chore: add project meta files and Claude behavioral guide
Add TODO.md, CHANGELOG.md, .claude/CLAUDE.md behavioral guide. Update README.md with v2 planning notice and docs links. Fix .gitignore to scope CLAUDE.md exclusion to root only.
This commit is contained in:
parent
2723fbf4be
commit
afc5a7f895
5 changed files with 77 additions and 1 deletions
34
.claude/CLAUDE.md
Normal file
34
.claude/CLAUDE.md
Normal file
|
|
@ -0,0 +1,34 @@
|
||||||
|
# BTerminal — Claude Behavioral Guide
|
||||||
|
|
||||||
|
## Workflow
|
||||||
|
|
||||||
|
- v1 is a single-file Python app (`bterminal.py`). Changes are localized.
|
||||||
|
- v2 planning docs are in `docs/`. Architecture decisions are in `docs/task_plan.md`.
|
||||||
|
- Consult Memora (tag: `bterminal`) before making architectural changes.
|
||||||
|
|
||||||
|
## Documentation References
|
||||||
|
|
||||||
|
- Architecture & decisions: [docs/task_plan.md](../docs/task_plan.md)
|
||||||
|
- Implementation phases: [docs/phases.md](../docs/phases.md)
|
||||||
|
- Research findings: [docs/findings.md](../docs/findings.md)
|
||||||
|
- Progress log: [docs/progress.md](../docs/progress.md)
|
||||||
|
|
||||||
|
## Rules
|
||||||
|
|
||||||
|
- Do not modify v1 code (`bterminal.py`) unless explicitly asked — it is production-stable.
|
||||||
|
- v2 work goes on a feature branch (`v2-mission-control`), not master.
|
||||||
|
- All v2 architecture decisions must reference `docs/task_plan.md` Decisions Log.
|
||||||
|
- When adding new decisions, append to the Decisions Log table with date.
|
||||||
|
- Update `docs/progress.md` after each significant work session.
|
||||||
|
|
||||||
|
## Key Technical Constraints
|
||||||
|
|
||||||
|
- WebKit2GTK has no WebGL — xterm.js must use Canvas addon explicitly.
|
||||||
|
- Claude Agent SDK is 0.2.x (pre-1.0) — all SDK interactions go through the adapter layer (`src/lib/adapters/sdk-messages.ts`).
|
||||||
|
- Node.js sidecar communicates via stdio NDJSON, not sockets.
|
||||||
|
- Maximum 4 active xterm.js instances to avoid WebKit2GTK memory issues.
|
||||||
|
|
||||||
|
## Memora Tags
|
||||||
|
|
||||||
|
Project tag: `bterminal`
|
||||||
|
Common tag combinations: `bterminal,architecture`, `bterminal,research`, `bterminal,tech-stack`
|
||||||
2
.gitignore
vendored
2
.gitignore
vendored
|
|
@ -1,4 +1,4 @@
|
||||||
__pycache__/
|
__pycache__/
|
||||||
*.pyc
|
*.pyc
|
||||||
*.pyo
|
*.pyo
|
||||||
CLAUDE.md
|
/CLAUDE.md
|
||||||
|
|
|
||||||
17
CHANGELOG.md
Normal file
17
CHANGELOG.md
Normal file
|
|
@ -0,0 +1,17 @@
|
||||||
|
# Changelog
|
||||||
|
|
||||||
|
All notable changes to this project will be documented in this file.
|
||||||
|
|
||||||
|
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
|
||||||
|
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
|
||||||
|
|
||||||
|
## [Unreleased]
|
||||||
|
|
||||||
|
### Added
|
||||||
|
- v2 architecture planning: Tauri 2.x + Svelte 5 + Claude Agent SDK via Node.js sidecar
|
||||||
|
- Research documentation covering Agent SDK, xterm.js performance, Tauri ecosystem, and ultrawide layout patterns
|
||||||
|
- Phased implementation plan (6 phases, MVP = Phases 1-4)
|
||||||
|
- Error handling and testing strategy for v2
|
||||||
|
- Documentation structure in `docs/` (task_plan, phases, findings, progress)
|
||||||
|
- TODO.md for tracking active work
|
||||||
|
- `.claude/CLAUDE.md` behavioral guide for Claude sessions
|
||||||
11
README.md
11
README.md
|
|
@ -2,6 +2,8 @@
|
||||||
|
|
||||||
Terminal with session panel (MobaXterm-style), built with GTK 3 + VTE. Catppuccin Mocha theme.
|
Terminal with session panel (MobaXterm-style), built with GTK 3 + VTE. Catppuccin Mocha theme.
|
||||||
|
|
||||||
|
> **v2 in planning:** Redesign as a multi-session Claude agent dashboard using Tauri 2.x + Svelte 5 + Claude Agent SDK. See [docs/task_plan.md](docs/task_plan.md) for architecture and [docs/phases.md](docs/phases.md) for implementation plan.
|
||||||
|
|
||||||

|

|
||||||
|
|
||||||
## Features
|
## Features
|
||||||
|
|
@ -93,6 +95,15 @@ Context database: `~/.claude-context/context.db`
|
||||||
| `Ctrl+Shift+V` | Paste |
|
| `Ctrl+Shift+V` | Paste |
|
||||||
| `Ctrl+PageUp/Down` | Previous/next tab |
|
| `Ctrl+PageUp/Down` | Previous/next tab |
|
||||||
|
|
||||||
|
## Documentation
|
||||||
|
|
||||||
|
| Document | Description |
|
||||||
|
|----------|-------------|
|
||||||
|
| [docs/task_plan.md](docs/task_plan.md) | v2 architecture decisions, error handling, testing strategy |
|
||||||
|
| [docs/phases.md](docs/phases.md) | v2 implementation phases (1-6) with checklists |
|
||||||
|
| [docs/findings.md](docs/findings.md) | Research findings (Agent SDK, Tauri, xterm.js, performance) |
|
||||||
|
| [docs/progress.md](docs/progress.md) | Session-by-session progress log |
|
||||||
|
|
||||||
## License
|
## License
|
||||||
|
|
||||||
MIT
|
MIT
|
||||||
|
|
|
||||||
14
TODO.md
Normal file
14
TODO.md
Normal file
|
|
@ -0,0 +1,14 @@
|
||||||
|
# BTerminal — TODO
|
||||||
|
|
||||||
|
## Active
|
||||||
|
|
||||||
|
- [ ] **Phase 1: Project Scaffolding** — Create feature branch, init Tauri 2.x + Svelte 5, basic window with Catppuccin theme. See [docs/phases.md](docs/phases.md).
|
||||||
|
- [ ] **Phase 2: Terminal Pane + Layout** — CSS Grid tiling, xterm.js with Canvas addon, PTY via portable-pty, SSH/shell/Claude CLI support.
|
||||||
|
- [ ] **Phase 3: Agent SDK Integration** — Node.js sidecar, SDK message adapter, structured agent panes with tool call cards.
|
||||||
|
- [ ] **Phase 4: Session Management + Markdown** — SQLite persistence, session CRUD, file watcher, markdown rendering. MVP ship after this phase.
|
||||||
|
- [ ] **Benchmark Canvas xterm.js** — Verify <50ms latency with 4 panes on target hardware (Phase 2 gate for Electron escape hatch).
|
||||||
|
- [ ] **Evaluate Deno as sidecar runtime** — Single binary, better packaging than Node.js. Test SDK compatibility.
|
||||||
|
|
||||||
|
## Completed
|
||||||
|
|
||||||
|
(none yet)
|
||||||
Loading…
Add table
Add a link
Reference in a new issue