diff options
| author | adamdottv <[email protected]> | 2025-06-26 12:28:22 -0500 |
|---|---|---|
| committer | Jay V <[email protected]> | 2025-06-26 17:22:21 -0400 |
| commit | 346b49219d10ac44bab59abbf06bdf7a719d0f36 (patch) | |
| tree | bbeb401b58f9b795d7ba6ed554bfd013589effb6 | |
| parent | d84c1f20c76776652cc8b74edeb43b25457abd6f (diff) | |
| download | opencode-346b49219d10ac44bab59abbf06bdf7a719d0f36.tar.gz opencode-346b49219d10ac44bab59abbf06bdf7a719d0f36.zip | |
chore: tui agents.md
| -rw-r--r-- | packages/tui/AGENTS.md | 26 |
1 files changed, 26 insertions, 0 deletions
diff --git a/packages/tui/AGENTS.md b/packages/tui/AGENTS.md new file mode 100644 index 000000000..a757e926b --- /dev/null +++ b/packages/tui/AGENTS.md @@ -0,0 +1,26 @@ +# TUI Agent Guidelines + +## Build/Test Commands + +- **Build**: `go build ./cmd/opencode` (builds main binary) +- **Test**: `go test ./...` (runs all tests) +- **Single test**: `go test ./internal/theme -run TestLoadThemesFromJSON` (specific test) +- **Generate client**: `go generate ./pkg/client/` (after server endpoint changes) +- **Release build**: Uses `.goreleaser.yml` configuration + +## Code Style + +- **Language**: Go 1.24+ with standard formatting (`gofmt`) +- **Imports**: Group standard, third-party, local packages with blank lines +- **Naming**: Go conventions - PascalCase exports, camelCase private, ALL_CAPS constants +- **Error handling**: Return errors explicitly, use `fmt.Errorf` for wrapping +- **Structs**: Define clear interfaces, embed when appropriate +- **Testing**: Use table-driven tests, `t.TempDir()` for file operations + +## Architecture + +- **TUI Framework**: Bubble Tea v2 with Lipgloss v2 for styling +- **Client**: Generated OpenAPI client communicates with TypeScript server +- **Components**: Reusable UI components in `internal/components/` +- **Themes**: JSON-based theming system with override hierarchy +- **State**: Centralized app state with message passing
\ No newline at end of file |
