Repository navigation
Releases: Jongtae/Still
Release list
Still v0.3.0
Minor release after v0.2.0; milestone v0.3.0 (27 closed issues) and everything merged to main since v0.2.0. New for the owner: the owner's Slack direct message as a conversation surface over Socket Mode (#214) and the owner's Mattermost direct message, outbound only (#213), with one owner across messengers for connectors and current context (#319), Slack answers sent as Slack Markdown (#372), the Slack thread status saying what Still is doing (#446) and every chat surface's worker told it answers in a chat (#375); a tool-free independent question answered while another Work runs (#17), and a shorter critical path for short replies (#309); messages sent mid-answer steer the running worker natively, a reply is never delivered with a steer its worker did not see, and the owner is told what happened to each one (#308), and a mid-Work correction reaches planning, not only the running worker (#428); a subscription CLI update no longer stops Still: the installed Codex or Claude Code binary is qualified locally in the background instead of against an in-code version list (#346, #344, #349), and on Linux and WSL a subscription CLI qualifies by those probes instead of a macOS-only list (#450); recall of earlier conversation exchanges, both sides (#205); a separate opt-in Gmail modify grant for organising the mailbox, with no send (#355), and mail results that carry a Gmail web link the owner can open (#497); Google Calendar changes made by the owner's AI through the Calendar API with Google's own refusal reason visible, replacing the fixed calendar draft and approval flow, with Still forcing no invitation e-mails (#432); forget and delete keep a record instead of erasing and cover the transcript (#367), and teach the owner model nothing (#380); the owner's stated plans remembered as durable facts (#398), a once-a-day look back over recent requests that finds facts first, then tidies quietly, raises only what the owner relies on and reads only the owner's own words (#402, #416, #423, #424, #425, #429), dated event records in each brief (#442), 내 기록 marking what the look back wrote (#443), an answer showing the memory it relied on by using it (#426), and every remembered fact saying what it rests on, the owner's own words or an inference, so a sentence the assistant wrote is never saved as something the owner said (#493); one shared voice for every owner-facing generator and Still's standing instructions sent to Codex as developer instructions (part of #198); the owner told what was understood and the plan before a long Work, and what the worker found while it works (#407), plan previews and interim messages that read like a person (#452), and a waiting bubble that names the launched AI and model (#458), shows only dots on Telegram (#445) and, with /dev on, shows them while the Work runs (#477); Claude Code sub-agents run inside the worker's turn and are shown by name in the waiting bubble, with the answer arriving only when they are done (#460); the worker brief states the Work's remaining allowance (#468), a Work that stops at its budget mid-progress offers Continue (#471), the token usage each CLI reports is recorded and shown on the Work (#467), and the worker catalogue shows each model's measured speed and usage next to its task size (#473, #498); a terminal first run that leads straight into a conversation, with Telegram connected from that conversation and its token typed hidden (#438); the web management screen with connection status first, files and permissions, memory first, and scheduled and diagnostics entry points (#390), settings panes that show what is on and add a connection by type through one dialog (#474), and site login reporting what it saved (#488); a judgment that may ask for the engine's strongest model, never a pinned name (#420), and the Judgment model chosen by measured speed among the qualified candidates, with Settings naming it, its median and p95 and the candidates compared (#472, #465), a failed candidate naming the case it failed (#470) and a Codex judgment taken at turn.completed (#469); a missing connection on the CLI route parks the Work and hands over the link, and a slot's write connection is offered in conversation (#363, #366); independent effect-free reads run concurrently on the CLI route (#386); and per-Work tool-attempt and browser-step caps raised to 200 (#353). Fixes include the login window opened at the full sign-in address (#340), a desktop-only page widening the phone sign-in window instead of being cropped (#254), predecessor browser and location fixes ported (#201), connector handoff, resume refusals and folder-permission lines in the owner's language (#242), the held-value comparison saying when it was cut off (#245), direct-route history labelled as earlier Works and a typed awaiting-the-owner fact (#240), evaluation in context with critique treated as advice (#202), the 8-character redaction floor applied to API responses so provider ids are not corrupted (#368), stored secrets redacted in the service so bridge text and method_gap notes are not withheld (#369), an attempt that could not be confirmed reported as such instead of as an irreversible action that ran (#387), the early plan kept when only the clock moved during routing (#384), watch and preparation fixes (#393, #394, #395, #404, #412), planner effort weighed against observed time (#410), a needed question about a missing request detail not treated as a prerequisite (#406), earlier scheduled goals shown as saved task context (#360), a resumed Work's request shown once in recall (#361), Still bridge calls counted apart from the CLI's own actions (#377), an interim message to the owner no longer blocking re-delegation (#466), and release workflow fixes for re-runs, the formula PR and milestone closing (#313, #301, #335). For development only, an AppWorld-based action sandbox for evaluations (#484).
Not claimed: No install of this tag archive was observed before publication; the publish workflow's macOS brew install/brew test and the installer smoke run only after the tag exists, and the owner's own upgrade is not yet recorded. Tests and CI do not prove live external integrations, model-dependent behavior or a background service surviving a restart. In particular, no live Slack or Mattermost workspace session, no live Gmail mailbox organising run, no live cross-model voice consistency and no completed Intel Mac Homebrew install is claimed by this release. Calendar drafts left pending by v0.2.0 are not applied after the upgrade, because the draft and approval flow is removed (#432). No live Linux or WSL subscription CLI judgment run is claimed (#450 is checked by tests). Known open items: the rest of one consistent voice, the messages.json register audit and live cross-model samples (#198); the README hero visual still shows the removed calendar draft and approval flow (#436); and test_mcp_sdk_bridge is flaky on Linux CI (#457).
Scope: https://github.com/Jongtae/Still/milestone/3
What's Changed
- docs(release): list #296 and #297 in what v0.2.0 carries (#286) by @Jongtae in #305
- fix(release): let the formula name the release in progress before it is recorded (#301) by @Jongtae in #302
- refactor(surface): route delivery claims, owner identity, guards, owner acts and notices through the surface (#213) by @Jongtae in #299
- release: install Still v0.2.0 with Homebrew (#286) by @Jongtae in #298
- test(api-requests): one fixed clock per stale-answer turn (#290) by @Jongtae in #300
- fix(judgment): label direct-route history as earlier Works; say the time only when known (#240) by @Jongtae in #303
- fix(information-use): say when the held-value comparison was cut off; fewer false matches (#245) by @Jongtae in #304
- fix(remote-login): a page wider than the phone window widens the window instead of being cropped (#254) by @Jongtae in #310
- feat(mattermost): the owner's Mattermost direct message as a conversation surface, outbound only (#213) by @Jongtae in #306
- fix(locale): connector handoff, resume refusals, folder-permission and phone sign-in lines follow the owner's language (#242) by @Jongtae in #312
- feat(judgment): one typed awaiting-the-owner fact for the plan, the judgment and the self-review; waiting is not a shortfall (#240) by @Jongtae in #311
- release: record published v0.2.0 and set 0.2.1 as the next placeholder (#286) by @Jongtae in #314
- test(steer): pin how Claude Code and Codex take a message sent mid-answer (#308 S0) by @Jongtae in #315
- docs: pin the one-line installer to the commit that installs v0.2.0 (#286) by @Jongtae in #318
- feat(steer): never deliver a reply with a steer its worker did not see (#308 S1) by @Jongtae in #320
- feat(slack): the owner's Slack direct message as a conversation surface over Socket Mode (#214) by @Jongtae in #316
- test(webkit): fit the #254 desktop-only fixture in the CI runners' 1024-px screen (#321) by @Jongtae in #322
- feat(steer): a Claude Code turn takes the owner's steers live in its stream-json session (#308 S2) by @Jongtae in #324
- chore(plan): close out WORKPLACE-01 (#206) by @Jongtae in #325
- feat(steer): the owner is told what happened to each message sent mid-answer (#308 S4) by @Jongtae in #326
- perf...
Still v0.2.0
Minor release after v0.1.0; milestone v0.2.0 (#258, #262, #271) and everything merged to main since v0.1.0. New for the owner: work mode, an owner-switched mode in which nothing a Work produced is sent out and no undeclared destination is reached (#208); owner-declared intranet destinations admitted by the private-address guards, with every DNS answer of a declared API host checked and pinned and a code run's exact port checked (#209); Claude Code and Codex run through Amazon Bedrock, Microsoft Foundry or Azure OpenAI (#211); Memory kept as append + invalidate, with the upkeep ending rows by id and dated facts ending (#220); every reader given the owner's earlier words for the request and the whole owner profile (#221, #217); working lessons kept in one bounded, revisable notes document (#19); held values found in outbound tool text shown in the information-use audit (#167); a worker-drafted connection disconnect the owner confirms (#183); calendar requests through the worker draft tools with the exact-preview approval kept (#22); analysis-method skills and bounded header reads (#32); a bounded load-more for lazy lists in browser reads (#11); an offer to start Still at login at the end of first setup (#105); independent public reads of one turn run at the same time (#16); company tools through the owner's own local MCP servers, with the Codex server keeping its own HOME and PATH and Claude Code turns started in the default permission mode so Still decides each call (#210); and typing on the phone keyboard straight into the Mac login window from the phone sign-in page (#293). Judgment reads owner acts and situations in context instead of keyword rules (#170, #172, #173, #174). Secret handling: a retired secret is never recalled and the early plan's reads are audited, also when a Work parks or the plan is asked again (#258, #275, #279); exports redact JSON-escaped secrets and rebuild the search index (#271). Fixes include the Telegram Bot API transport on httpx2 and replies queued while Telegram is unreachable (#121, #123), usable Google credentials through renewal failures and write 401s (#8, #246), decoded Gmail bodies (#150), browser typing, press and stop fixes (#12, #102, #103, #244), the iPhone profile token (#13), non-ASCII case folding in result search (#203), an FTS5 statement re-prepared after a concurrent schema change (#262), locale catalog fixes (#10, #235), the phone sign-in link message saying how its session ended and the prompt dropping its buttons while the phone link drives the window (#255), and outbound audit records only after a transport hand-off (#233).
Not claimed: No install of this tag archive was observed before publication; the publish workflow's macOS brew install/brew test and the installer smoke run only after the tag exists, and the owner's own upgrade is not yet recorded. Tests and CI do not prove live external integrations, model-dependent behavior or a background service surviving a restart. In particular, no live Amazon Bedrock, Microsoft Foundry or Azure OpenAI run, no live intranet destination, and no work-mode session on a company network is claimed by this release. No live company MCP server is claimed; #210 was observed locally without a model. The Mattermost and Slack surfaces (#213, #214) are not in it. Known open defects: four predecessor fixes not yet ported, including asking for the current location before using a fitting saved place (#201), and a desktop-only page cropped in the phone-sized login window (#254).
Scope: https://github.com/Jongtae/Still/milestone/2
What's Changed
- release: install Still v0.1.0 with Homebrew (#55) by @Jongtae in #72
- release: record published v0.1.0 (#55) by @Jongtae in #73
- test: build the pre-release state in the first-release script tests (#75) by @Jongtae in #76
- docs: pin the one-line installer to the commit that installs v0.1.0 (#55) by @Jongtae in #74
- refactor(research): retire the category research tool for generic search and page reads (#23) by @Jongtae in #77
- ci(release): merge the record and pin PRs after their checks pass (#79) by @Jongtae in #80
- ci(pages): move upload-pages-artifact to v5 before Node 20 is removed (#81) by @Jongtae in #82
- test(login): apply the phone-login guard in the login harness under every runner (#78) by @Jongtae in #83
- test: keep the phone-login guard when the suite runs under unittest (#84) by @Jongtae in #85
- docs: keep QUICKSTART's install note on the newest release (#86) by @Jongtae in #87
- test: apply the phone-login guard once in LoginHarness (#88) by @Jongtae in #89
- chore(plan): activate BROWSER-REL-01 browser reliability program (#94) by @Jongtae in #95
- fix(browser): explain why typing did not run and type into focus-editable widgets (#12) by @Jongtae in #98
- fix(plan): give BROWSER-REL-01 its milestone and update the selection note (#100) by @Jongtae in #101
- fix(browser): report a press that landed on another element as covered, not changed (#102) by @Jongtae in #104
- fix(start): skip the setup intro with nothing to ask; blame only the latest restart (#90) by @Jongtae in #91
- docs(release): record the owner's v0.1.0 Homebrew install (#92) by @Jongtae in #93
- feat(browser): let a read load more rows of a lazy list within explicit bounds (#11) by @Jongtae in #99
- fix(browser): send the frozen iOS token and an iPhone platform with the phone profile (#13) by @Jongtae in #108
- chore(plan): close out BROWSER-REL-01 (#94) by @Jongtae in #109
- fix(service): name start-at-login after brew install and record the running agentos (#96) by @Jongtae in #97
- build(actions): bump Vampire/setup-wsl from 7.0.0 to 7.2.0 by @dependabot[bot] in #112
- build(deps): bump claude-agent-sdk from 0.2.166 to 0.2.168 by @dependabot[bot] in #110
- build(deps): bump pypdf from 6.19.0 to 6.20.1 by @dependabot[bot] in #111
- feat(setup): offer to start Still at login at the end of first setup (#105) by @Jongtae in #106
- chore(plan): activate QUALITY-CORE-01 (#115) by @Jongtae in #116
- chore(plan): record the #22 decision and run #21 before #22 (#115) by @Jongtae in #118
- fix(browser): confirm a press only by a click on its target (#103) by @Jongtae in #120
- fix(skills): keep delivery fee apart before a final-price claim (#25) by @Jongtae in #117
- fix(telegram): adopt httpx2 for the Bot API transport (#121) by @Jongtae in #125
- refactor(service): run a Work through named execution phases (#21) by @Jongtae in #119
- fix(worker): recheck time-sensitive claims after conflicting owner feedback (#24) by @Jongtae in #124
- fix(telegram): keep a reply queued while Telegram is unreachable (#123) by @Jongtae in #126
- fix(deps): move the claude-agent-sdk runtime check and record to the 0.2.168 pin (#129) by @Jongtae in #130
- fix(worker): a source's own live status counts as observed at retrieval (#24) by @Jongtae in #127
- fix(worker): explain when several service views are one evolving item (#15) by @Jongtae in #128
- refactor(telegram): move Telegram ingestion, callbacks and delivery to telegram_surface (#21) by @Jongtae in #133
- feat(skills): analysis methods, bounded header reads and advisory method gap (#32) by @Jongtae in #131
- refactor(store): put the Telegram tables behind TelegramStore (#21) by @Jongtae in #134
- ci: run the full suite in parallel with pytest-xdist (#135) by @Jongtae in #137
- perf(runtime): run a turn's independent public reads at the same time (#16) by @Jongtae in #140
- feat(calendar): route calendar requests through the worker draft tools; keep the exact-preview approval (#22) by @Jongtae in #139
- chore(plan): close out QUALITY-CORE-01 (#115) and activate STEADY-01 (#132) by @Jongtae in #141
- fix(google): keep a usable refresh credential through transient renewal failures (#8) by @Jongtae in #145
- feat(owner-model): keep working lessons in one bounded, revisable notes document (#19) by @Jongtae in #144
- fix(locale): connection errors and remaining fixed lines from the shared catalog (#10) by @Jongtae in #146
- fix(locale): tell ja/zh owners the calendar reply words the parser accepts (#10 follow-up) by @Jongtae in #147
- chore(plan): close out STEADY-01 (#132) by @Jongtae in #148
- fix(worker): check ever...
Still v0.1.0
First Still release, restarted at 0.1.0 from the predecessor's in-tree 1.4.2; milestone v0.1.0 (#4, #45, #46, #48, #51). It carries the predecessor source imported on 2026-10-17 and the repository transition: public entry points, installer and development references point at Jongtae/Still, the Homebrew formula lives in this repository (brew tap jongtae/still https://github.com/Jongtae/Still), and the agentos command, data directory and AGENTOS_* variables are kept for compatibility. It also carries the fixes merged before preparation: WebKit process start before the first navigation deadline (#5), closing a disconnected web client without replaying (#6), the procedure-library replacement message (#7), a pinned turn clock in Work regression tests (#9), recovered steps told apart from unresolved failures (#14), the PR-body reuse review guide (#59), an incomplete calendar request handed to the AI worker (#63), no receive failure reported for one Telegram connection reset (#65), and the owner-model upkeep tests kept on their Works' clock (#67).
Not claimed: No install of this tag archive was observed before publication; the publish workflow's macOS brew install/brew test and the installer smoke run only after the tag exists, and the owner's own upgrade is not yet recorded. Installs from the predecessor's Jongtae/homebrew-agentos tap are not moved to this tap by this release. Tests and CI do not prove live external integrations, model-dependent behavior or a background service surviving a restart.
Scope: https://github.com/Jongtae/Still/milestone/1
What's Changed
- build(deps): bump claude-agent-sdk from 0.2.165 to 0.2.166 by @dependabot[bot] in #3
- build(deps): bump pydantic from 2.13.5 to 2.14.1 by @dependabot[bot] in #2
- build(actions): bump astral-sh/setup-uv from 10.2.0 to 10.3.0 by @dependabot[bot] in #1
- chore: start a fresh delivery plan for Still and archive the predecessor's by @Jongtae in #49
- build: restart Still releases at 0.1.0 with an in-repo Homebrew formula by @Jongtae in #47
- build(deps): record the Dependabot setup-uv, claude-agent-sdk and pydantic bumps by @Jongtae in #50
- docs: replace the README banner with the Still name by @Jongtae in #52
- docs: point public entry points at Still and map retained names (#4) by @Jongtae in #54
- docs: show how to pass the PR-body reuse review gate before opening a PR (#59) by @Jongtae in #60
- test: pin the turn clock so Work regressions stop depending on wall time (#9) by @Jongtae in #61
- fix(web): close the connection on client disconnect without replaying (#6) by @Jongtae in #57
- fix(procedures): say library replaces the module and name dropped functions (#7) by @Jongtae in #56
- fix(outcomes): tell recovered steps apart from unresolved failures (#14) by @Jongtae in #58
- fix(browser): start WebKit's processes before the first navigation deadline (#5) by @Jongtae in #62
- fix(telegram): stop reporting a receive failure for one connection reset (#65) by @Jongtae in #66
- fix(calendar): hand an incomplete calendar request to the AI worker by @Jongtae in #64
- test: keep the owner-model upkeep tests on the clock their Works use (#67) by @Jongtae in #68
- chore(release): prepare v0.1.0, the first Still release (#55) by @Jongtae in #69
New Contributors
- @dependabot[bot] made their first contribution in #3
- @Jongtae made their first contribution in #49
Full Changelog: https://github.com/Jongtae/Still/commits/v0.1.0