Skip to content

Latest commit

 

History

History
55 lines (43 loc) · 3.73 KB

File metadata and controls

55 lines (43 loc) · 3.73 KB

tinycode Technical Specification

Version: 2.0 Date: 2026-09-11

This specification documents tinycode, the Go rewrite of tinycode. It serves as:

  1. Contributor reference — how tinycode actually works, with exact constants, thresholds, and formulas
  2. Parity tracker — what's been ported from the TypeScript original vs. what's missing
  3. Standalone spec — tinycode on its own terms, including Go-only features

Start here (current documentation)

Use this table before older gap analyses or September 2026 review notes (those files carry Historical document banners).

Audience Document
New users ../getting-started.md, ../user-guide.md, ../quickstart.md
Operators / deploy ../install.md, ../deployment.md, ../troubleshooting.md
Contributors (Go) ../building.md, ../architecture.md, ../adding-a-tool.md, root ../../AGENTS.md and ../../CLAUDE.md
Plugins ../plugin-development.md, ../plugin-catalog.md
IDE / automation ../acp-integration.md, 17-testing-strategy.md
TS-only / not in Go 16-not-implemented.md (tmux swarm, Electron desktop, etc.)
Release / changelog ../../CHANGELOG.md, ../../README.md feature list

Repository layout: The product is the Go tree (cmd/, internal/, pkg/). The packages/ directory is legacy TypeScript used only to build the optional embedded web UI (make embed-webapp); it is not the runtime.

Authoritative HTTP surface: Go route tables in 02-api-routes.md (and internal/server/router.go) are the source of truth for tinycode serve. packages/sdk/openapi.json is the historical TypeScript contract and overstates share/PTY/OAuth routes that are not implemented in Go.

Sections

# File Section
0 00-overview.md Overview and architecture
1 01-interfaces.md Interfaces: TUI, Web, CLI, ACP
2 02-api-routes.md HTTP API routes
3 03-event-system.md Event system and SSE protocol
4 04-session-management.md Session lifecycle and processing
5 05-context-compaction.md Context compaction and pruning
6 06-llm-providers.md LLM providers and discovery
7 07-agents.md Agent system
8 08-tools.md Built-in tools
9 09-plugins.md Plugin system
10 10-skills.md Skill system
11 11-mcp.md MCP client
12 12-permissions.md Permission system
13 13-configuration.md Configuration
14 14-storage.md Storage and database
15 15-security.md Security
16 16-not-implemented.md TS features not yet ported
17 17-testing-strategy.md Automated testing strategy

Relationship to TS spec

The TypeScript specification (tc-spec.md) documents the original tinycode 1.x implementation. This Go spec documents the 2.0 rewrite. Where behavior differs, this spec is authoritative for tinycode. The not-implemented section summarizes TS behaviors that have not been ported.