9.7 KiB
Created
Created by tickets.sh create.
Plan
Yoi rename survey
Generated by read-only Pod surveyor-yoi-rename-20260601 on 2026-06-01.
Executive stance
Move implementation/public identity to Yoi / yoi / .yoi / YOI_* everywhere that is product, runtime, config, CLI, package, prompt, profile, diagnostic, test, or public documentation surface.
Do not bulk-rename historical records, generated personal memory, old work-item threads, or rationale docs except where they currently function as live project instructions or public docs.
A small bounded migration path is appropriate for existing dogfood data directories, but old public aliases should not be preserved long-term unless explicitly reapproved.
Major rename surfaces
Cargo package, crate, binary, lockfile
Files:
Cargo.tomlcrates/insomnia/Cargo.tomlcrates/insomnia/src/main.rsCargo.lockcrates/pod/src/entrypoint.rs- tests that expect
insomnia/insomnia pod
Recommendations:
crates/insomnia/->crates/yoi/- package
insomnia->yoi - workspace dependency key
insomnia->yoi - installed binary
insomnia->yoi - regenerate
Cargo.lock - update help/tests from
Usage: insomnia ...toUsage: yoi ... - do not ship an
insomniabinary unless a compatibility alias is explicitly approved
Nix package/app/devshell
Files:
package.nixflake.nixdevshell.nixvalidation surface
Recommendations:
pname = "insomnia"->pname = "yoi"- flake description should say Yoi
- flake app should point at
${package}/bin/yoi - expose
yoipackage/app outputs - avoid long-term
insomniapublic output aliases
CLI/runtime command surfaces
Files:
crates/insomnia/src/main.rscrates/pod/src/entrypoint.rscrates/client/src/runtime_command.rscrates/client/src/spawn.rsdocs/environment.md
Recommendations:
insomnia->yoiinsomnia pod->yoi podINSOMNIA_POD_RUNTIME_COMMAND->YOI_POD_RUNTIME_COMMANDINSOMNIA-READY->YOI-READY- runtime binary fallback
insomnia->yoi - update CLI help tests and command examples
Mixed-version parent/child spawning need not be supported unless explicitly required.
Data/config/runtime directories
Central files/surfaces:
crates/manifest/src/paths.rscrates/pod/src/entrypoint.rscrates/session-store/src/fs_store.rscrates/pod-registry/src/table.rscrates/tui/src/single_pod.rscrates/memory/src/workspace.rs.insomnia/manifest.toml
Recommendations:
INSOMNIA_HOME->YOI_HOMEINSOMNIA_CONFIG_DIR->YOI_CONFIG_DIRINSOMNIA_DATA_DIR->YOI_DATA_DIRINSOMNIA_RUNTIME_DIR->YOI_RUNTIME_DIR~/.insomnia->~/.yoi~/.config/insomnia->~/.config/yoi$XDG_RUNTIME_DIR/insomnia->$XDG_RUNTIME_DIR/yoi/tmp/insomnia-*->/tmp/yoi-*.insomnia/->.yoi/.insomnia/{manifest.toml,workflow,knowledge,memory,prompts}->.yoi/...
Migration recommendation:
- Provide an explicit migration command/documented manual move, or a one-time startup migration if new paths do not exist and old paths do.
- Do not keep old and new roots as equal long-term search paths.
- Do not bulk-read or rewrite ignored personal
.insomnia/memorycontents during repository cleanup.
Environment variables
Active variables to rename:
INSOMNIA_HOME->YOI_HOMEINSOMNIA_CONFIG_DIR->YOI_CONFIG_DIRINSOMNIA_DATA_DIR->YOI_DATA_DIRINSOMNIA_RUNTIME_DIR->YOI_RUNTIME_DIRINSOMNIA_POD_RUNTIME_COMMAND->YOI_POD_RUNTIME_COMMAND
Historical/obsolete variables in old docs/work-items can remain if the file is historical.
Prompt/profile namespace
Files:
resources/prompts/system/default.mdresources/prompts/system/normal.mdresources/prompts/system/pod-orchestration.mdresources/prompts/internal/*.mdresources/profiles/default.luacrates/manifest/src/profile.rscrates/pod/src/prompt/loader.rs
Recommendations:
insomnia system->Yoi systemoryoi system$insomnia/...->$yoi/...require("insomnia")->require("yoi")require("insomnia.scope")->require("yoi.scope")insomnia.profile->yoi.profileinsomnia.lua-profile.v1->yoi.lua-profile.v1.insomnia/prompts->.yoi/prompts
Compatibility aliases should be avoided for public release unless separately approved.
Active project instructions and docs
Rename active/live documentation and instructions:
AGENTS.mdREADME.mddocs/environment.mddocs/manifest-profiles.mddocs/pod-factory.md- active
docs/plan/*.mdanddocs/ref/*.mdas appropriate - active workflow instructions under
.insomnia/workflow/*.mdafter path migration
Do not bulk-rename historical records:
- closed work items
- historical reports in
docs/report/ docs/branding.mdold-name rationale- rename ticket title/content where it explicitly describes the transition
Tests, snapshots, fixtures
Likely test surfaces:
crates/pod/src/entrypoint.rscrates/client/src/runtime_command.rscrates/client/src/spawn.rscrates/manifest/src/paths.rscrates/manifest/src/profile.rscrates/memory/src/workspace.rscrates/tools/src/web.rscrates/pod/tests/*.rs
Recommendations:
- expected CLI help:
insomnia->yoi - env tests:
INSOMNIA_*->YOI_* - path tests:
.insomnia->.yoi - Lua profile tests:
insomniamodule ->yoi - generic test sample strings should be renamed unless intentionally testing migration
User-visible diagnostics/log messages
Relevant surfaces:
crates/pod/src/entrypoint.rscrates/client/src/runtime_command.rscrates/pod-registry/src/table.rscrates/manifest/src/profile.rscrates/pod/src/prompt/loader.rscrates/insomnia/src/memory_lint.rs- TUI status/action messages that show paths or commands
Recommendations:
- diagnostics should use
YOI_*,$yoi,require("yoi"),yoi pod, and.yoipaths - old names should appear only in explicit migration diagnostics
Repository/path names outside code
Surfaces:
- local checkout path
/home/hare/Projects/insomnia - repository name
- worktree names
- current runtime output paths under
/run/user/1000/insomnia/...
Recommendations:
- Public repository name should eventually become
yoi. - Local checkout/runtime output paths are not first-pass code-edit targets.
- Current session/tool output paths are generated/historical.
Intentionally retained old-name references
Do not bulk-rename by default:
docs/branding.mdrationale explaining the collision and rename- this rename work item where it states old-to-new transition
- closed work items under
work-items/closed/ - historical
docs/report/files - generated/personal
.insomnia/memorycontent - external session logs under old runtime paths
- migration tests/docs that explicitly refer to legacy
insomnianames
Proposed implementation order
- Decide canonical spellings:
- Product:
Yoi - command/package/crate:
yoi - dotdir:
.yoi - env prefix:
YOI_ - builtin prompt prefix:
$yoi - Lua module namespace:
yoi
- Product:
- Rename Cargo/product package:
- move
crates/insomnia->crates/yoi - update workspace manifest, package names, dependency keys, tests
- confirm
cargo metadata
- move
- Rename Nix packaging:
- update
package.nix,flake.nix, app program, install check
- update
- Rename CLI/runtime command surfaces:
- command/help/examples/tests
- runtime override env var
- ready marker
- binary fallback
- Rename path/env authority:
- centralize in
crates/manifest/src/paths.rs - decide legacy path migration behavior
- centralize in
- Rename workspace conventions:
.insomnia->.yoi- move tracked workflow/knowledge/manifest assets
- avoid rewriting generated personal memory
- Rename profile/prompt namespace:
$yoirequire("yoi")- builtin profile/schema/source strings
- Update active docs and project instructions.
- Update tests/fixtures and add migration tests if migration is implemented.
- Final grep/audit pass and classify remaining hits.
Validation checklist
Minimum validation after implementation:
cargo check --workspacecargo test --workspaceor standard targeted test setcargo metadata --format-version 1cargo run -p yoi -- --helpshowsyoicargo run -p yoi -- pod --helpshowsUsage: yoi pod- spawn path test verifies parent expects
YOI-READY - env/path tests verify
YOI_HOME,YOI_CONFIG_DIR,YOI_DATA_DIR,YOI_RUNTIME_DIR,YOI_POD_RUNTIME_COMMAND - runtime path tests verify
~/.yoi,~/.config/yoi,$XDG_RUNTIME_DIR/yoi,.yoi/memory,.yoi/workflow,.yoi/knowledge - Lua profile tests verify
require("yoi")and no requiredrequire("insomnia") - prompt loader tests verify
$yoi/...and.yoi/prompts - Nix validation verifies
$out/bin/yoiand flake app launch - final residual search:
git grep -n -I -E 'insomnia|Insomnia|INSOMNIA|\.insomnia'
Every remaining hit must be branding rationale, migration code/test/doc, closed historical record, generated/personal ignored state, or an explicitly preserved external reference.
Decision
Decision: adopt Yoi with no compatibility aliases.
The rename should be implemented as a clean public identity change: Yoi / yoi / .yoi / YOI_*. Do not ship old insomnia binaries, command aliases, prompt/profile aliases, or environment-variable aliases.
For existing dogfood/user state, implement only a bounded one-shot migration path from old local paths to the new Yoi paths. Old and new roots must not remain equal long-term search roots.