You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Codogotchi 2.6.0 shipped v3_preview's UX gap-closing work into main. This thread is the working roadmap for what's next — not a finalized scope, just the shape of the work so far, open to reordering, additions, and cuts. If you want to contribute, this is where to find something sized to what you want to work on, and where to argue for or against a direction before it turns into an issue.
Repo: cross-reference CONTRIBUTING.md for setup + how issues are difficulty-labeled (difficulty: 1–8).
Thesis
v2 was the major architectural rewrite: pet-per-platform, pet-per-session, Minimalist mode, the combined window, session caps/eviction, and the customization surface that drives all of it. It shipped, it works, and it left the seams showing.
v3 is the polish release, across five tracks:
UX gap-closing (mostly closed out as of 2.6.0)
Distribution maturity (notarized DMG, Sparkle, App Store, Homebrew)
Sessions panel (surfacing session lifecycle in Settings)
Architectural consolidation (investigation first, no big-bang rewrite)
Fleshing out Settings → RPG tab (new — see below)
Landed in 2.6.0 (Track 1 — UX gap-closing)
Right-click mode-switch pill (Pet Mode ↔ Minimalist Mode), Panel Size pill with a linear Small/Large slider, in-app-click dismissal fixes for both, dismiss-TTL refresh on explicit Show, zombie menu-entry culling, a full Settings window redesign (themed tab strip, fixed 1120×770, side-by-side idle/eviction cards, hooks table), mode-specific conflict bubble anchors, "Sync Label" / "Hide All Other Pets" right-click affordances, session titles that persist across relaunch and default to the platform's own auto-titled thread name, an Antigravity hook-row color, a prompt-elapsed timer chip, and — worth flagging on its own — relicensed from PolyForm Noncommercial 1.0.0 to MIT.
Remaining Track 1 gaps: the Settings Customization tab doesn't live-refresh on manual customization.json edits (low priority), and there's a right-click affordance-parity audit still owed across the three window shapes (own / minimalist / combined) — folds into Track 4 below.
Track 2 — Distribution maturity
Notarize the DMG (Developer ID signing + notarytool) — prerequisite for everything else.
Sparkle in-app updates (EdDSA-signed appcast) — kills the manual-DMG-download loop.
Mac App Store — sandboxing is the real unknown; the app reads/writes ~/.codogotchi and per-platform hook installs touch other apps' config dirs. Treat as its own investigation.
Homebrew cask — cheap once (1) lands.
Track 3 — Sessions panel
A new Settings tab surfacing the session lifecycle (Active / Live / Archived tiers) that v2 built but never exposed — today only the menubar dropdown shows anything, and only the "Active" tier. Per-row Show/Prune actions, bulk "Show all live" / "Prune archived now," and a natural home for the lifecycle explainer that currently lives only in code comments.
v2 was built incrementally and it shows: stringly-typed window keys (origin / origin:session_id / "combined", discriminated by colon-splitting all over the codebase), ~100-line factory closures wiring 8–10 callbacks each, three window shapes (own/minimalist/combined) that hand-implement the same affordances in parallel, a 10-step imperative update() pipeline, ad-hoc customization.json write paths, and a flat 63-file Sources/ directory. None of this is "v2 was dumb" — it's normal accretion under a shipping deadline. The plan is a scoping investigation, not a rewrite, with refactors landing where they unblock Track 3 work (e.g., a real WindowKey enum before the Sessions panel adds another colon-split site).
Track 5 — Fleshing out Settings → RPG tab (new)
Today the RPG tab is just a HUD toggle. Candidates for fleshing it out:
Visibility
Show the XP ring and Health directly in the RPG tab, so you get that insight without dedicating panel space to a HUD on every pet.
Right-click "Own HUD" affordance on a Pet-mode panel — selecting it removes the HUD from every other panel, so only the chosen one carries it.
The RPG tab should identify which platform/session currently owns the HUD.
Progression stats (all downstream of tracking prompt/activity durations as a time series — not on the existing state.d/rpg-state.json contract, likely a new file with its own retention policy):
Best-guess ETA to next level.
Average / longest prompt duration, broken out by platform.
Agent-hours per day/week/month.
Token consumption → estimated spend, via a blended pricing heuristic — realistically Claude Code + Codex only, since those are the platforms known to surface usage data today.
Platform usage breakdown (share of time/sessions per platform).
Configurable health mechanics (currently hardcoded: half-heart loss per 8h inactivity, half-heart gain per 1h activity):
Make decay/regen rates user-configurable, extending the existing health.* config family.
Make sickness indicators configurable — off entirely, or choose which heart levels trigger them. Current thinking: only trigger at 1 heart and ½ heart (tone down from today), which may ship as the new default even before full configurability lands.
A few more we'd add: an inline "why is my pet sick / low HP" explainer once rates are configurable, a per-platform HP/XP breakdown (not just global), export/reset controls for the new duration time-series (privacy + "clear my history"), and an opt-in weekly/monthly digest notification once the aggregation exists.
Sequencing is roughly: Track 4's cheap high-leverage moves (the Sources/ restructure, WindowKey enum) → Sessions panel (Track 3) → RPG tab (Track 5, partly parallel) → distribution (Track 2) → App Store investigation last.
If any of this overlaps with something you want to build, or you think a track is wrong/missing, say so here before it turns into issues — that's what this thread is for.
reacted with thumbs up emoji reacted with thumbs down emoji reacted with laugh emoji reacted with hooray emoji reacted with confused emoji reacted with heart emoji reacted with rocket emoji reacted with eyes emoji
Uh oh!
There was an error while loading. Please reload this page.
-
Codogotchi 2.6.0 shipped
v3_preview's UX gap-closing work intomain. This thread is the working roadmap for what's next — not a finalized scope, just the shape of the work so far, open to reordering, additions, and cuts. If you want to contribute, this is where to find something sized to what you want to work on, and where to argue for or against a direction before it turns into an issue.Repo: cross-reference CONTRIBUTING.md for setup + how issues are difficulty-labeled (
difficulty: 1–8).Thesis
v2 was the major architectural rewrite: pet-per-platform, pet-per-session, Minimalist mode, the combined window, session caps/eviction, and the customization surface that drives all of it. It shipped, it works, and it left the seams showing.
v3 is the polish release, across five tracks:
Landed in 2.6.0 (Track 1 — UX gap-closing)
Right-click mode-switch pill (Pet Mode ↔ Minimalist Mode), Panel Size pill with a linear Small/Large slider, in-app-click dismissal fixes for both, dismiss-TTL refresh on explicit Show, zombie menu-entry culling, a full Settings window redesign (themed tab strip, fixed 1120×770, side-by-side idle/eviction cards, hooks table), mode-specific conflict bubble anchors, "Sync Label" / "Hide All Other Pets" right-click affordances, session titles that persist across relaunch and default to the platform's own auto-titled thread name, an Antigravity hook-row color, a prompt-elapsed timer chip, and — worth flagging on its own — relicensed from PolyForm Noncommercial 1.0.0 to MIT.
Remaining Track 1 gaps: the Settings Customization tab doesn't live-refresh on manual
customization.jsonedits (low priority), and there's a right-click affordance-parity audit still owed across the three window shapes (own / minimalist / combined) — folds into Track 4 below.Track 2 — Distribution maturity
notarytool) — prerequisite for everything else.~/.codogotchiand per-platform hook installs touch other apps' config dirs. Treat as its own investigation.Track 3 — Sessions panel
A new Settings tab surfacing the session lifecycle (Active / Live / Archived tiers) that v2 built but never exposed — today only the menubar dropdown shows anything, and only the "Active" tier. Per-row Show/Prune actions, bulk "Show all live" / "Prune archived now," and a natural home for the lifecycle explainer that currently lives only in code comments.
Track 4 — Architectural consolidation (investigation first)
v2 was built incrementally and it shows: stringly-typed window keys (
origin/origin:session_id/"combined", discriminated by colon-splitting all over the codebase), ~100-line factory closures wiring 8–10 callbacks each, three window shapes (own/minimalist/combined) that hand-implement the same affordances in parallel, a 10-step imperativeupdate()pipeline, ad-hoccustomization.jsonwrite paths, and a flat 63-fileSources/directory. None of this is "v2 was dumb" — it's normal accretion under a shipping deadline. The plan is a scoping investigation, not a rewrite, with refactors landing where they unblock Track 3 work (e.g., a realWindowKeyenum before the Sessions panel adds another colon-split site).Track 5 — Fleshing out Settings → RPG tab (new)
Today the RPG tab is just a HUD toggle. Candidates for fleshing it out:
Visibility
Progression stats (all downstream of tracking prompt/activity durations as a time series — not on the existing
state.d/rpg-state.jsoncontract, likely a new file with its own retention policy):Configurable health mechanics (currently hardcoded: half-heart loss per 8h inactivity, half-heart gain per 1h activity):
health.*config family.A few more we'd add: an inline "why is my pet sick / low HP" explainer once rates are configurable, a per-platform HP/XP breakdown (not just global), export/reset controls for the new duration time-series (privacy + "clear my history"), and an opt-in weekly/monthly digest notification once the aggregation exists.
Sequencing is roughly: Track 4's cheap high-leverage moves (the
Sources/restructure,WindowKeyenum) → Sessions panel (Track 3) → RPG tab (Track 5, partly parallel) → distribution (Track 2) → App Store investigation last.If any of this overlaps with something you want to build, or you think a track is wrong/missing, say so here before it turns into issues — that's what this thread is for.
Beta Was this translation helpful? Give feedback.
All reactions