Skip to content

Tags: adam2go/tilo-framework

Tags

v0.4.1

Toggle v0.4.1's commit message
release: 0.4.1 — py.typed, __version__, README coherence

Library-quality polish:
- Add tilo/py.typed so downstream users get full type checking (mypy/pyright)
  from `tilo` — verified it ships in the wheel.
- Expose tilo.__version__ (from package metadata).
- README repositioned for coherence with "library, not a framework": the
  spec/adapters/renderers are the core; the full ROAM runtime is clearly the
  optional tilo[server] path (no more "lib vs heavy framework" whiplash).

369 tests pass; clean-venv lean install verified (version + py.typed + hero path).
npm @adam2go/tilo-react unchanged (source identical since 0.2.0) — no republish.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>

v0.4.0

Toggle v0.4.0's commit message
docs+release: reposition as a lightweight library; AG-UI complementar…

…y; 0.4.0

- README (EN + zh-CN): "a library, not a framework". Lead the Why section with
  the lean-install + render-anywhere story; add a complementary-stack table and
  an explicit "Tilo and AG-UI work together" comparison (compose, don't compete).
- Install guidance updated to lean `pip install tilo` vs `tilo[server]`.
- Adapter tables include AG-UI; CHANGELOG 0.4.0 entry.
- Bump 0.4.0. Build + twine check pass; all docs links resolve.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>

v0.3.0

Toggle v0.3.0's commit message
release: 0.3.0 — base_url providers, shell CLI generate, followups, r…

…epair, lighter imports

Makes the published package match the docs. Highlights since 0.2.0:
- base_url → any OpenAI-compatible provider (DeepSeek/Groq/OpenRouter/local)
- `tilo generate "goal"` shell command
- generate_followup(), save_spec()/load_spec()
- JSON repair retry, temperature + strict params, actionable errors
- lazy schemas package (domain off the lightweight import path)

Verified: twine check + clean-venv install of 0.3.0 OK; CI green.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>

v0.2.0

Toggle v0.2.0's commit message
release: 0.2.0 — lighter install, LLM extras, PyPI-ready

- Bump 0.1.0 → 0.2.0 (Beta); new description matches the README pitch
- Make psycopg an optional [postgres] extra — SQLite is the default and
  nothing imports psycopg eagerly, so `pip install tilo` is now much lighter
  (verified: clean-venv install runs tilo.generate/view with no LLM SDK,
  no psycopg)
- Add LLM extras: tilo[openai], tilo[anthropic], tilo[langchain], tilo[all]
- Add project URLs (Homepage/Docs/Repo/Changelog) for the PyPI sidebar
- Add backend/README.md as the PyPI long description
- Dockerfile installs .[postgres] (the compose stack uses Postgres)

Verified: twine check passes, 293 tests pass, clean-venv end-to-end OK.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>

npm-v0.2.0

Toggle npm-v0.2.0's commit message
feat(react): full block-renderer parity with tilo.generate() + viewer…

… (0.2.0)

The npm package's renderArtifactBlock() only handled 9 "rich" block types,
so specs from tilo.generate() — which heavily use heading/metric/table/
checklist/confirmation/button_group/rating/form/progress — fell through to
the generic fallback in React, even though the zero-setup Python viewer
rendered them fully.

Added 12 renderers so React matches the viewer exactly:
  heading, markdown, card, metric, table, list (content)
  progress (visualization)
  checklist, rating, button_group, form, confirmation (interactive)

checklist + rating are lightly interactive (local useState). Bumped to 0.2.0
to match the Python package; typecheck + build pass.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>

npm-v0.1.1

Toggle npm-v0.1.1's commit message
fix: rename @tilo/react → @adam2go/tilo-react (@tilo npm scope unavai…

…lable)

npm-v0.1.0

Toggle npm-v0.1.0's commit message
feat: @tilo/react npm package (packages/react/)

Publishable React renderer SDK for Tilo AIP specs.

Exports:
  TiloRenderer          — surface spec renderer with blockWrapper + override API
  renderArtifactBlock   — artifact block renderer (chart/diff/code/timeline/kanban/…)
  blockRenderers        — registry for custom block type overrides
  createTiloClient      — configurable API client (baseUrl, custom fetcher)
  useTiloSurface        — hook: load SurfaceTurns for run or session, optional polling
  All TypeScript types  — SurfaceSpec, ArtifactBlock, BlockProps, TiloAction, …

Build: tsup (ESM + CJS + .d.ts), externals: react, react-dom, recharts, lucide-react
Peer deps: react ≥18, react-dom ≥18, recharts ≥2, lucide-react ≥0.400

CI: .github/workflows/npm-publish.yml — triggers on npm-v* tags,
    publishes via NPM_TOKEN secret (set in GitHub → Settings → Secrets)

To publish:
  1. Add NPM_TOKEN to GitHub repo secrets
  2. git tag npm-v0.1.0 && git push --tags

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>

v0.1.0

Toggle v0.1.0's commit message
feat: chart/diff/code/timeline/kanban block rendering + PyPI publish …

…workflow

Frontend — blockRenderers.tsx (recharts-powered, no breaking changes):
  - chart: bar, line, pie, radar via Recharts + ResponsiveContainer
  - diff: unified diff (color-coded +/- lines) or side-by-side before/after
  - code: monospace with language label + dark background
  - timeline: vertical dot-and-line layout (Tailwind, no CSS class deps)
  - kanban: horizontal columns with cards (Tailwind, no CSS class deps)
  - tool_preview / tool_call_preview: status badge + output pre block
  - memory_card / memory_candidate_card: indigo card + salience %
  - confirmation / confirmation_action: existing, registered explicitly
  All blocks fall back to ExtensionFallbackBlock for unknown types.
  Frontend build passes (Next.js 14, TypeScript strict).

PyPI — .github/workflows/publish.yml:
  - Triggers on v* tags: git tag v0.1.0 && git push --tags
  - Uses OIDC trusted publishing (no API token needed in repo secrets)
  - Builds sdist + wheel from backend/ via python -m build
  - Publishes via pypa/gh-action-pypi-publish@release/v1

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>

v0.1-demos

Toggle v0.1-demos's commit message
Merge feature/aip-v1: Agent Interaction Protocol (AIP) v1