@solo-level/tui
v0.1.4
Published
Terminal UI for Solo Level XP, quests, challenges, seasons, and workspace activity tracking.
Readme
Solo Level TUI
Terminal UI for Solo Level XP, quests, challenges, seasons, and workspace activity tracking.
Beta Tester Install
Beta testers do not need this repository or any workspace setup. They do need Bun, because OpenTUI uses native FFI that does not run under normal Node.js.
Install Bun first:
curl -fsSL https://bun.sh/install | bashRestart the terminal, then confirm:
bun --versionRun the TUI from the project directory you want Solo Level to track:
cd path/to/your/project
npx @solo-level/tuiOr install it globally once:
npm install -g @solo-level/tui
cd path/to/your/project
solo-levelAfter the TUI opens:
- Sign in.
- Confirm the footer says
Tracking workspace: <project>. - Make a real code change in that project.
- Wait for the tracker to group the activity and award XP.
If tracking fails, report your OS, terminal app, Node version, project path, and the exact error shown in the footer.
Configuration And Security
The published TUI includes the production Supabase URL and Supabase anon key. That is intentional: the anon key is a public client key, protected by Supabase row-level security and user auth. Testers do not need a .env file.
Never bake private keys into the TUI package. These must stay server-side only:
- Supabase service role keys
- Polar access tokens and webhook secrets
- AI provider API keys
- Tauri signing keys
Local .env files are only for maintainers who need to override the public Supabase project or website URL while developing.
Workspace XP Tracking
After sign-in, the TUI watches the current working directory and sends meaningful coding activity through the shared @solo-level/core workspace tracker. The tracker ignores noisy generated files, groups edits into activity sessions, and awards XP through the same XP pipeline used by the desktop app.
The footer shows the tracking state:
Tracking workspace: <project>means the current directory is being watched.Workspace tracking starts after sign inmeans the user still needs to authenticate.Workspace tracking unavailable: <reason>means the terminal/runtime could not watch the directory.
Maintainer Local Development
This section is only for maintainers working from the Solo Level repo. Beta testers should not run these commands.
Install dependencies from the repository root, then run the TUI workspace:
npm install
npm --workspace apps/solo-level-tui run devBuild and verify the publish package:
npm --workspace apps/solo-level-tui run build
npm --workspace apps/solo-level-tui run test
npm pack --workspace apps/solo-level-tui --dry-runMaintainer Publishing
This section is only for maintainers publishing the package to NPM.
The TUI is intended to ship through NPM so testers can run it from any terminal. Publish the shared core package first, then publish the TUI:
npm publish --workspace packages/core --access public
npm publish --workspace apps/solo-level-tui --access publicAfter publishing, testers can use:
npx @solo-level/tui