args.ts: the Environment Variables section now listsPI_RULES_DISABLED,PI_RULES_MAX_RULE_CHARS, andPI_RULES_MAX_RESULT_CHARSwith their accepted values and defaults.
- The settings added in #670 were documented in the README but omitted from
senpi --help, leaving the two environment-only character limits undiscoverable from the CLI.
- The static Environment Variables section belongs to
printHelp()and extensions can register flags, not help entries for environment settings.
- LOW:
args.tsEnvironment Variables rows.
args.ts: added the--list-tipsboolean flag next to--list-models, with a help row.list-tips.ts(new):collectTips()renders everyTIP_DEFINITIONSentry through the defaultKeybindingsManager(the same construction the tips tests use for live keys) into{id, text, requiresCommand?}records;listTips()prints the array as 2-space-indented JSON.main.ts: mirrors every--list-modelsdispatch branch for the new flag - plain runtime metadata command, in-memory session manager, early exit before first-time setup, and print-mode project trust - except the flag needs no model runtime, so it prints and exits without creating agent-session services.- Coverage:
test/suite/list-tips.test.tspins the full catalog id order (includingfallback-chains-setting), non-empty rendered text, andrequiresCommandgating.
- The tip catalog teaches most of the fork's surface but was only visible one line at a time; a JSON dump gives scripts and the give-me-tips skill the whole catalog in one pass.
- Flag parsing and pre-runtime dispatch run before extensions load.
- MEDIUM:
args.tsflag table and parse branches. - LOW:
main.tsdispatch branches;list-tips.tsis additive.
- Removed the gated
--neoflag family, help text, launcher modules, and early-dispatch path. Unknown long flags continue to use the extension-flag channel.
- The retired Go TUI no longer has a supported entry point.
- LOW: removal-only change in fork-owned CLI glue.
neo/build-argv.ts: forwards--system-promptand repeated--append-system-promptfrom the parsed classic argv so the Go client can put them in the handshakeruntimeOptions(daemon side in../modes/rpc/changes.md2026-07-18).
- The launcher forwards every runtime-relevant flag; these two were parsed but dropped, so neo clients silently lost them through the shared daemon.
- Pre-runtime launcher argv construction; extensions are not loaded yet.
- LOW:
neo/is fork-only.
args.ts: added--neo,--neo-isolated, hidden--neo-bin, and--listen <path>. (History: a gated--neoflag first landed 2026-05-18, was removed with the TS neo-tui package on 2026-05-26, and returned 2026-07-06 for the Go TUI handoff.)neo/(fork-only):launch.ts,build-argv.ts,platform.ts,resolve-binary.ts,daemon-launch.ts— resolves the per-platform@code-yeongyu/senpi-neo-tui-<platform>-<arch>binary (SENPI_NEO_BIN→--neo-bin→require.resolve), builds child argv, and launches the shared daemon.
- The neo Go TUI ships as a separate binary; the CLI owns flag parsing and binary resolution for the handoff
(dispatch in
../changes.md2026-07-06, daemon serving in../modes/rpc/changes.md).
- Flag parsing and pre-runtime dispatch run before extensions load.
- MEDIUM:
args.tsflag table and parse branches. - LOW:
neo/(fork-only directory).
config-selector.tsandstartup-ui.ts: wire theProcessTerminalexternal stdout guard so strayconsole.logoutput during startup dialogs (trust prompt, onboarding, session picker) and the config selector is hidden from the screen and appended, redacted, to the debug log.
- QA showed a stray
console.logcorrupting the trust dialog (core/log side in../core/changes.md2026-07-04).
- Startup dialogs run before extensions load.
- LOW: TUI construction sites in
config-selector.ts/startup-ui.ts.
args.ts: addedsenpi app-serversubcommand parsing (--listen ws://…, stdio) with 2026-07-03 review hardening;project-trust.tsthreads theapp-serverapp mode through trust resolution.
- The fork's app-server mode needs CLI plumbing next to the existing modes (dispatch in
../changes.md2026-07-02).
- Subcommand parsing precedes extension loading.
- MEDIUM:
args.tssubcommand/flag parsing. - LOW:
project-trust.tsmode threading.
list-models.ts: themodelcommand lists the full catalog instead of only the narrowed/favorite subset.
- With the fork's
favoriteModelsnarrowing (see../core/changes.mdfavorite-model entries), the command otherwise hid installable models users wanted to switch to.
- The
modelcommand's listing is built-in CLI behavior.
- LOW:
list-models.tscatalog listing.
args.ts: Top-level help now documentssenpi updateas updating senpi instead of pi.
- The forked CLI should not tell users that self-update targets upstream pi.
- The built-in help text is emitted before extension-registered flags are appended.
- LOW: package-command rows in
printHelp().