Skip to content

IvanWng97/ascii-agents

v0.3.0 Feature

This release adds 3 notable features for engineering teams evaluating rollout.

✓ No known CVEs patched
Read the diff → Tool health → What is this tool? →

✓ No known CVEs patched in this version

Topics

ai-agents claude-code cli codex pixel-art ratatui
+3 more
rust tui visualization

Summary

AI summary

Bug fixes across core rendering and testing, refactoring of renderer architecture, and expanded tests for new features.

Changes in this release

Feature Low

Adds per‑floor navigation with PageUp/PageDown/↑↓/jk keys.

Adds per‑floor navigation with PageUp/PageDown/↑↓/jk keys.

Source: llm_adapter@2026-05-31

Confidence: high

Feature Low

Adds slide transition compositing for multi‑floor navigation.

Adds slide transition compositing for multi‑floor navigation.

Source: llm_adapter@2026-05-31

Confidence: high

Feature Low

Implements extensible NamingStrategy pattern and integrates Antigravity CLI source.

Implements extensible NamingStrategy pattern and integrates Antigravity CLI source.

Source: llm_adapter@2026-05-31

Confidence: high

Feature Low

Adds source prefix to agent labels (cc· / ag·).

Adds source prefix to agent labels (cc· / ag·).

Source: llm_adapter@2026-05-31

Confidence: high

Feature Low

Adds CatPetState data structures and plumbing (Phase 1).

Adds CatPetState data structures and plumbing (Phase 1).

Source: llm_adapter@2026-05-31

Confidence: high

Feature Low

Adds chitchat module skeleton with unit tests (Phase 1).

Adds chitchat module skeleton with unit tests (Phase 1).

Source: llm_adapter@2026-05-31

Confidence: high

Feature Low

Adds walking_coffee sprite for coffee‑run animation.

Adds walking_coffee sprite for coffee‑run animation.

Source: llm_adapter@2026-05-31

Confidence: high

Feature Low

Adds antigravity ask_permission/ask_question flow that transitions to Waiting state.

Adds antigravity ask_permission/ask_question flow that transitions to Waiting state.

Source: granite4.1:30b@2026-05-31-audit

Confidence: high

Feature Low

Implements parent‑child agent cascade on SessionEnd.

Implements parent‑child agent cascade on SessionEnd.

Source: granite4.1:30b@2026-05-31-audit

Confidence: high

Feature Low

Introduces floor.rs with FloorCtx, FloorTransition helpers for multi‑floor support.

Introduces floor.rs with FloorCtx, FloorTransition helpers for multi‑floor support.

Source: granite4.1:30b@2026-05-31-audit

Confidence: high

Feature Low

Extends next_free_desk range to max_desks × MAX_FLOORS.

Extends next_free_desk range to max_desks × MAX_FLOORS.

Source: granite4.1:30b@2026-05-31-audit

Confidence: high

Feature Low

Adds per‑floor variants for cityview, cat decorations, lighting.

Adds per‑floor variants for cityview, cat decorations, lighting.

Source: granite4.1:30b@2026-05-31-audit

Confidence: high

Feature Low

Adds per‑floor layout variants adjusting room proportions, walls, decor.

Adds per‑floor layout variants adjusting room proportions, walls, decor.

Source: granite4.1:30b@2026-05-31-audit

Confidence: high

Feature Low

Introduces furniture tooltips, corridor appliances, and meeting screen rework.

Introduces furniture tooltips, corridor appliances, and meeting screen rework.

Source: granite4.1:30b@2026-05-31-audit

Confidence: high

Feature Low

Adds position freeze and heart particle effect for cat petting (Phase 2).

Adds position freeze and heart particle effect for cat petting (Phase 2).

Source: granite4.1:30b@2026-05-31-audit

Confidence: high

Feature Low

Implements hit_test_cat with sprite‑aware bounding boxes (Phase 3).

Implements hit_test_cat with sprite‑aware bounding boxes (Phase 3).

Source: granite4.1:30b@2026-05-31-audit

Confidence: high

Feature Low

Adds state‑dependent cat tooltip (Phase 4).

Adds state‑dependent cat tooltip (Phase 4).

Source: granite4.1:30b@2026-05-31-audit

Confidence: high

Feature Low

Wires click handler to trigger cat petting (Phase 5).

Wires click handler to trigger cat petting (Phase 5).

Source: granite4.1:30b@2026-05-31-audit

Confidence: high

Feature Low

Integrates chitchat detection into pixel_painter pipeline (Phase 2).

Integrates chitchat detection into pixel_painter pipeline (Phase 2).

Source: granite4.1:30b@2026-05-31-audit

Confidence: high

Feature Low

Adds chitchat bubble widget and wires it into draw_scene (Phase 3).

Adds chitchat bubble widget and wires it into draw_scene (Phase 3).

Source: granite4.1:30b@2026-05-31-audit

Confidence: high

Feature Low

Polishes chitchat with 24‑line limit, widget tests, clippy+fmt clean (Phase 4).

Polishes chitchat with 24‑line limit, widget tests, clippy+fmt clean (Phase 4).

Source: granite4.1:30b@2026-05-31-audit

Confidence: high

Feature Low

Implements event‑driven desk coffee cup from pantry walk‑back and on exit.

Implements event‑driven desk coffee cup from pantry walk‑back and on exit.

Source: granite4.1:30b@2026-05-31-audit

Confidence: high

Feature Low

Auto‑computes max_desks from layout capacity and removes +/- key bindings.

Auto‑computes max_desks from layout capacity and removes +/- key bindings.

Source: granite4.1:30b@2026-05-31-audit

Confidence: high

Bugfix Medium

Fixes crash on startup with source‑aware fallback labels and ended sessions.

Fixes crash on startup with source‑aware fallback labels and ended sessions.

Source: llm_adapter@2026-05-31

Confidence: high

Bugfix Medium

Replaces expect/unwrap with proper error handling in production code.

Replaces expect/unwrap with proper error handling in production code.

Source: llm_adapter@2026-05-31

Confidence: high

Bugfix Medium

Removes redundant .into_iter() flagged by CI clippy.

Removes redundant .into_iter() flagged by CI clippy.

Source: llm_adapter@2026-05-31

Confidence: high

Refactor Low

Refactors TuiRenderer to use per‑floor contexts and adds floor_info to draw_scene.

Refactors TuiRenderer to use per‑floor contexts and adds floor_info to draw_scene.

Source: granite4.1:30b@2026-05-31-audit

Confidence: high

Refactor Low

Decouples per‑source decoders via function‑pointer injection.

Decouples per‑source decoders via function‑pointer injection.

Source: granite4.1:30b@2026-05-31-audit

Confidence: high

Refactor Low

Removes overflow sofa/floor‑seat rendering and dead floor_seats code.

Removes overflow sofa/floor‑seat rendering and dead floor_seats code.

Source: granite4.1:30b@2026-05-31-audit

Confidence: high

Full changelog

Bug Fixes

  • source-aware fallback labels, skip ended sessions on startup
  • antigravity label falls back to "ag" instead of UUID directory name
  • unused path param in derive_ag_label
  • vertical slide transition with floor divider
  • vertical direction matches real building, ease-out animation
  • crash fix, scrolling text overlays, baseboard removal
  • hide text during transition, clean up dead code warnings
  • address all code review findings for multi-floor PR
  • FloorMeta threaded correctly through all render paths
  • final review — compute_with_seed in draw_scene, remove dead FloorVariant
  • wall footprint stays 1px in walkable mask (top-down projection)
  • address code review findings
  • return Layout from draw_scene, fix hit-test on non-F1 floors
  • replace binary PNG snapshots with pixel-hash golden tests
  • remove redundant .into_iter() flagged by CI clippy
  • double-%% in tooltip, dead _layout param, stale docs
  • sync max_desks from shared atomic in reducer_task
  • align Antigravity ActivityEnd tool_use_id with ActivityStart format
  • add cycle guard to BFS cascade in SessionEnd handler
  • replace expect/unwrap with proper error handling in production code
  • guard pending_idle_at semantics in ActivityEnd handler
  • replace string doubling with modular indexing in TickerQueue::visible
  • address pet-the-cat code review findings
  • use pre-breath anchor for chitchat bubbles
  • register walking_coffee sprites in embedded pack loader
  • improve coffee cup sprite + simplify animation selection
  • align walking coffee cup color with desk cup
  • preserve desk coffee across Active/Waiting states
  • use last_idle_at for correct coffee persistence across states
  • rename vacuous tests, remove dead variables
  • use fetch_max for monotone capacity, fix stale comments + docs
  • compute max_desks as min capacity across all floor variants
  • pre-release batch — simplify coffee to persistent HashSet, remove thiserror, fix reducer + max_desks + test deadlines
  • revert to fetch_max for max_desks, fix stale CLAUDE.md reference

Documentation

  • add Antigravity to supported tools, update architecture docs
  • multi-floor office design spec
  • multi-floor office — README, CLAUDE.md, keyboard hints
  • update CLAUDE.md for code reorganization
  • fix tooltip format in CLAUDE.md (---% → --% active)
  • add Pet the Cat design spec
  • add Pantry Chitchat design spec
  • update README features table for pet-cat, coffee run, chitchat

Features

  • implement extensible NamingStrategy pattern and integrate Antigravity CLI source
  • add source prefix to agent labels (cc· / ag·)
  • antigravity ask_permission/ask_question → Waiting state
  • parent-child agent cascade on SessionEnd
  • add floor.rs with FloorCtx, FloorTransition, and partitioning helpers
  • extend next_free_desk range to max_desks * MAX_FLOORS
  • refactor TuiRenderer to per-floor contexts + add floor_info to draw_scene
  • PageUp/PageDown/↑↓/jk floor navigation
  • slide transition compositing for multi-floor navigation
  • per-floor variants — cityview, cat, decorations, lighting
  • per-floor layout variants — room proportions, walls, decor
  • furniture tooltips, corridor appliances, floor layout rework, meeting screen
  • add CatPetState data structures and plumbing (Phase 1)
  • add position freeze and heart particle effect (Phase 2)
  • add hit_test_cat with sprite-aware bounding boxes (Phase 3)
  • add state-dependent cat tooltip (Phase 4)
  • wire click handler to trigger cat petting (Phase 5)
  • add chitchat module skeleton with unit tests (Phase 1)
  • wire chitchat detection into pixel_painter pipeline (Phase 2)
  • add chitchat bubble widget and wire into draw_scene (Phase 3)
  • polish chitchat — 24 lines, widget test, clippy+fmt clean (Phase 4)
  • add carrying_coffee to Pose::Walking for coffee-run animation
  • add walking_coffee sprite for coffee-run animation
  • event-driven desk coffee cup from pantry walk-back
  • event-driven desk cup + carry coffee on exit
  • auto-compute max_desks from layout capacity, remove +/- key bindings
  • add ascii-agents-dev custom agent, remove redundant assets symlink

Miscellaneous

  • add homebrew-core formula for future submission
  • bump version to 0.3.0

Refactoring

  • decouple per-source decoders via fn pointer injection
  • address all code review findings
  • remove overflow sofa/floor-seat rendering
  • remove dead floor_seats code from layout
  • introduce DrawCtx struct for draw_scene
  • split renderer.rs into renderer + widgets + hit_test
  • extract pixel_painter/furniture.rs + move anchors
  • decompose layout::compute into private helpers
  • cache Layout on TuiRenderer, pass &Layout to hit-tests
  • move paint_elevator_indicator to widgets.rs

Styling

  • apply rustfmt
  • apply rustfmt to format.rs
  • apply rustfmt to coffee-run changes

Testing

  • add coverage for cascade, unknown_cwd, session_ended, parent detection
  • verify walkable mask connectivity across floor seeds
  • add hit_test_furniture coverage
  • add insta snapshot tests + pixel regression tests
  • add golden image regression + widget cell assertion tests
  • add layout geometry + walkable mask golden snapshots
  • add coverage for parent-child cascade, hook-wins dedup, and sweep_stale
  • add coffee lifecycle tests + update CLAUDE.md coffee docs

Beautify

  • wall partition depth + corridor diamond carpet pattern
  • room fill items + walkable rule in CLAUDE.md
  • coat rack, doormat, notice board, trash bin, water cooler

Plan

  • multi-floor office implementation — 7 tasks, TDD-shaped

Tune

  • increase wander frequency for more social interaction

Weekly OSS security release digest.

The CVE patches and breaking changes that affected production tools this week. One email, every Sunday.

No spam, unsubscribe anytime.

Share this release

Track IvanWng97/ascii-agents

Get notified when new releases ship.

Sign up free

About IvanWng97/ascii-agents

All releases →

Related context

Earlier breaking changes

  • v0.4.0 Rename project from ascii-agents to pixtuoid (v0.4.0).

Beta — feedback welcome: [email protected]