Directories
¶
| Path | Synopsis |
|---|---|
|
cmd
|
|
|
basecamp
command
Package main is the entry point for the basecamp CLI.
|
Package main is the entry point for the basecamp CLI. |
|
e2e
|
|
|
recorder
command
|
|
|
internal
|
|
|
appctx
Package appctx provides application context helpers.
|
Package appctx provides application context helpers. |
|
auth
Package auth provides OAuth 2.1 authentication for Basecamp.
|
Package auth provides OAuth 2.1 authentication for Basecamp. |
|
commands
Package commands implements the CLI commands.
|
Package commands implements the CLI commands. |
|
completion
Package completion provides tab completion support for the basecamp CLI.
|
Package completion provides tab completion support for the basecamp CLI. |
|
config
Package config provides layered configuration loading.
|
Package config provides layered configuration loading. |
|
connector
Package connector is the intake half of `basecamp connect`: the account event feed, the durable ledger behind it, and the recovery that makes a crash a delay rather than a loss.
|
Package connector is the intake half of `basecamp connect`: the account event feed, the durable ledger behind it, and the recovery that makes a crash a delay rather than a loss. |
|
connector/admission
Package admission turns a seen account-feed event into a verdict: admitted, queued, blocked or discarded.
|
Package admission turns a seen account-feed event into a verdict: admitted, queued, blocked or discarded. |
|
connector/driver
Package driver is the connector's agent boundary: how a dispatched task becomes a working coding agent, and how the connector hears what it does.
|
Package driver is the connector's agent boundary: how a dispatched task becomes a working coding agent, and how the connector hears what it does. |
|
connector/driver/acp
Package acp is the connector as an Agent Client Protocol v1 client: one adapter process per session, spoken to over newline-delimited JSON-RPC 2.0 on its stdio.
|
Package acp is the connector as an Agent Client Protocol v1 client: one adapter process per session, spoken to over newline-delimited JSON-RPC 2.0 on its stdio. |
|
connector/driver/claude
Package claude is the spawn driver for Claude Code: `claude -p` with streaming JSON in and out, adapted onto the driver package's ACP-shaped session.
|
Package claude is the spawn driver for Claude Code: `claude -p` with streaming JSON in and out, adapted onto the driver package's ACP-shaped session. |
|
connector/driver/codex
Package codex is the spawn driver for Codex: `codex exec --json`, adapted onto the driver package's ACP-shaped session.
|
Package codex is the spawn driver for Codex: `codex exec --json`, adapted onto the driver package's ACP-shaped session. |
|
connector/driver/drivertest
Package drivertest is the shared way to test the connector's one-owner rule: a task's process tree and its ledger record have a single owner and a single release point (see the rule written out in internal/connector/driver/worker.go).
|
Package drivertest is the shared way to test the connector's one-owner rule: a task's process tree and its ledger record have a single owner and a single release point (see the rule written out in internal/connector/driver/worker.go). |
|
connector/driver/spawn
Package spawn chooses a spawn driver by the worker connect.json names: the coding agent started as a process per session.
|
Package spawn chooses a spawn driver by the worker connect.json names: the coding agent started as a process per session. |
|
connector/ndjson
Package ndjson writes the connector's stdout protocol: one JSON value per line, never torn.
|
Package ndjson writes the connector's stdout protocol: one JSON value per line, never torn. |
|
connector/setup
Package setup is `basecamp connect setup`'s half of the connector (plan step 16): connect.json — its schema, where it lives, how it is written and how it is refused — and the checks that can run before the connector does.
|
Package setup is `basecamp connect setup`'s half of the connector (plan step 16): connect.json — its schema, where it lives, how it is written and how it is refused — and the checks that can run before the connector does. |
|
dateparse
Package dateparse provides natural language date parsing.
|
Package dateparse provides natural language date parsing. |
|
editor
Package editor provides $EDITOR integration for composing content.
|
Package editor provides $EDITOR integration for composing content. |
|
harness
Package harness detects and checks AI agent integration health.
|
Package harness detects and checks AI agent integration health. |
|
hostutil
Package hostutil provides shared utilities for host URL handling.
|
Package hostutil provides shared utilities for host URL handling. |
|
mcpserver
Package mcpserver assembles the MCP server behind `basecamp mcp`: Basecamp's tool catalog derived from basecamp-sdk's model exports, dispatched through the CLI's authenticated, account-scoped SDK client.
|
Package mcpserver assembles the MCP server behind `basecamp mcp`: Basecamp's tool catalog derived from basecamp-sdk's model exports, dispatched through the CLI's authenticated, account-scoped SDK client. |
|
models
Package models provides canonical type definitions for Basecamp API entities.
|
Package models provides canonical type definitions for Basecamp API entities. |
|
names
Package names provides name resolution for projects, people, and todolists.
|
Package names provides name resolution for projects, people, and todolists. |
|
observability
Package observability provides metrics collection and tracing for CLI operations.
|
Package observability provides metrics collection and tracing for CLI operations. |
|
output
Package output provides JSON/Markdown output formatting and error handling.
|
Package output provides JSON/Markdown output formatting and error handling. |
|
presenter
Package presenter provides schema-aware rendering for Basecamp entities.
|
Package presenter provides schema-aware rendering for Basecamp entities. |
|
resilience
Package resilience provides cross-process state management for long-running CLI operations.
|
Package resilience provides cross-process state management for long-running CLI operations. |
|
richtext
Package richtext provides utilities for converting between Markdown and HTML.
|
Package richtext provides utilities for converting between Markdown and HTML. |
|
sdk
Package sdk provides core SDK interfaces for the Basecamp API client.
|
Package sdk provides core SDK interfaces for the Basecamp API client. |
|
sdk/errors
Package errors provides SDK error types without CLI-specific hints.
|
Package errors provides SDK error types without CLI-specific hints. |
|
stdinarg
Package stdinarg carries the shared vocabulary for "-" (read from stdin) argument handling: the cobra annotation that marks where a command accepts "-", and pipe detection for deciding whether a stray "-" is ambiguous.
|
Package stdinarg carries the shared vocabulary for "-" (read from stdin) argument handling: the cobra annotation that marks where a command accepts "-", and pipe detection for deciding whether a stray "-" is ambiguous. |
|
sysfd
Package sysfd carries a file descriptor between the three places that name one: a value a process is given on its command line, a *os.File or raw connection Go hands over as a uintptr, and the syscall wrappers that take a plain number.
|
Package sysfd carries a file descriptor between the three places that name one: a value a process is given on its command line, a *os.File or raw connection Go hands over as a uintptr, and the syscall wrappers that take a plain number. |
|
tui
Package tui provides terminal user interface components.
|
Package tui provides terminal user interface components. |
|
tui/empty
Package empty provides empty state messages for TUI components.
|
Package empty provides empty state messages for TUI components. |
|
tui/format
Package format provides formatting helpers for TUI components.
|
Package format provides formatting helpers for TUI components. |
|
tui/recents
Package recents provides a store for tracking recently used items.
|
Package recents provides a store for tracking recently used items. |
|
tui/resolve
Package resolve provides interactive prompts for resolving missing CLI options.
|
Package resolve provides interactive prompts for resolving missing CLI options. |
|
tui/workspace
Package workspace provides the persistent TUI application.
|
Package workspace provides the persistent TUI application. |
|
tui/workspace/chrome
Package chrome provides always-visible shell components for the workspace.
|
Package chrome provides always-visible shell components for the workspace. |
|
tui/workspace/views
Package views provides the individual screens for the workspace TUI.
|
Package views provides the individual screens for the workspace TUI. |
|
tui/workspace/widget
Package widget provides reusable TUI components.
|
Package widget provides reusable TUI components. |
|
urlarg
Package urlarg provides utilities for parsing Basecamp URLs into IDs.
|
Package urlarg provides utilities for parsing Basecamp URLs into IDs. |
|
version
Package version provides build-time version information.
|
Package version provides build-time version information. |
|
Package skills embeds the skill files in the binary.
|
Package skills embeds the skill files in the binary. |
Click to show internal directories.
Click to hide internal directories.