pi-multi-account
Automatic multi-account failover & rotation for Pi Agent across Anthropic (Claude), OpenAI/ChatGPT Codex, Qwen/Alibaba, and Ollama. Auto-discovers authenticated accounts, grows the rotation on login, and drops accounts on logout, expiry, or quota/rate-lim
Install
pi install npm:pi-multi-account
Installs from npm into ~/.pi/agent/.
Add -l for project-local (.pi/). Manage with pi list / pi update / pi remove.
What this package can reach
Detected automatically from the source at
version 1.14.2.
This describes access, not safety — you decide whether it's appropriate for what
the package claims to do.
- Behavior — Changes how the agent thinks Modifies the system prompt, injects messages, or rewrites conversation context.
- Credentials — Handles your API keys Reads or passes provider credentials. Highest-trust capability there is.
- Files — Reads files outside your project Touches paths beyond the working directory, such as your home folder.
- Network — Talks to the internet Makes outbound network requests. Check the destinations are ones you expect.
- UI — Draws its own interface Renders widgets, footers, dialogs or full-screen views.
What it actually did when run
observedLoaded in a sandbox with no network, a read-only filesystem and a recording stand-in for pi's API. This is what it called — not what the source suggests it might.
Events subscribed after_provider_responseagent_endagent_startbefore_agent_startbefore_provider_requestinputmessage_endmessage_startmessage_updatemodel_selectsession_before_compactsession_shutdownsession_starttool_execution_endtool_execution_starttool_execution_updateturn_start
APIs called getThinkingLevelisIdlemodelRegistry.authStorage.hasAuthmodelRegistry.authStorage.reloadmodelRegistry.getAllmodelRegistry.getAll.filtermodelRegistry.getAll.filter.filtermodelRegistry.getAll.filter.filter.mapregisterCommandregisterProviderui.notifyui.setStatus
22 calls the source scan did not predict
modelRegistry.authStorage.hasAuth · modelRegistry.authStorage.reload · modelRegistry.getAll.filter · modelRegistry.getAll.filter.filter · modelRegistry.getAll.filter.filter.map · on("after_provider_response") · on("agent_end") · on("agent_start") · on("before_agent_start") · on("before_provider_request") · on("input") · on("message_end") · on("message_start") · on("message_update") · on("model_select") · on("session_before_compact") · on("session_shutdown") · on("session_start") · on("tool_execution_end") · on("tool_execution_start") · on("tool_execution_update") · on("turn_start")
Reached through a value the scan could not follow — passed as an argument, stored on another object, or returned by a helper.
Run against version 1.14.2 on 2026-08-02.
Registration-time behaviour under default settings; other configurations may differ.
Reviews
0 publishedSign in with GitHub to write a review, reply, or vote.
No reviews yet — be the first.
More in Models & providers
- superpowers-zh — AI 编程超能力中文增强版 — superpowers(250k+ ⭐)完整汉化 + 4 个中国原创 skills,支持 Claude Code / Copilot CLI / H…
- pi-llama-cpp — llama.cpp integration for pi — run local models via router, single and legacy modes.
- pi-deepseek-search — Web search for pi using DeepSeek's server-side search. Works with DeepSeek models only.
- @d3ara1n/pi-provider-agnes — Agnes AI provider for pi — registers agnes (token billing) and agnes-plan (subscription) p…