testing
This commit is contained in:
@@ -0,0 +1,56 @@
|
||||
# Test Plan: CLI Flags
|
||||
|
||||
## Feature description
|
||||
|
||||
Loki CLI accepts flags for model, role, session, agent, file input,
|
||||
execution mode, and various info/list commands. Flags determine
|
||||
the execution path through main.rs.
|
||||
|
||||
## Behaviors to test
|
||||
|
||||
### Early-exit flags
|
||||
- [ ] --info prints info and exits
|
||||
- [ ] --list-models prints models and exits
|
||||
- [ ] --list-roles prints roles and exits
|
||||
- [ ] --list-sessions prints sessions and exits
|
||||
- [ ] --list-agents prints agents and exits
|
||||
- [ ] --list-rags prints RAGs and exits
|
||||
- [ ] --list-macros prints macros and exits
|
||||
- [ ] --sync-models fetches and exits
|
||||
- [ ] --build-tools (with --agent) builds and exits
|
||||
- [ ] --authenticate runs OAuth and exits
|
||||
- [ ] --completions generates shell completions and exits
|
||||
- [ ] Vault flags (--add/get/update/delete-secret, --list-secrets) and exit
|
||||
|
||||
### Mode selection
|
||||
- [ ] No text/file → REPL mode
|
||||
- [ ] Text provided → command mode (single-shot)
|
||||
- [ ] --agent → agent mode
|
||||
- [ ] --role → role mode
|
||||
- [ ] --execute (-e) → shell execute mode
|
||||
- [ ] --code (-c) → code output mode
|
||||
- [ ] --prompt → temp role mode
|
||||
- [ ] --macro → macro execution mode
|
||||
|
||||
### Flag combinations
|
||||
- [ ] --model + any mode → model applied
|
||||
- [ ] --session + --role → session with role
|
||||
- [ ] --session + --agent → agent with session
|
||||
- [ ] --agent + --agent-variable → variables set
|
||||
- [ ] --dry-run + any mode → input shown, no API call
|
||||
- [ ] --no-stream + any mode → non-streaming response
|
||||
- [ ] --file + text → file content + text combined
|
||||
- [ ] --empty-session + --session → fresh session
|
||||
- [ ] --save-session + --session → force save
|
||||
|
||||
### Prelude
|
||||
- [ ] apply_prelude runs before main execution
|
||||
- [ ] Prelude "role:name" loads role
|
||||
- [ ] Prelude "session:name" loads session
|
||||
- [ ] Prelude "session:role" loads both
|
||||
- [ ] Prelude skipped if macro_flag set
|
||||
- [ ] Prelude skipped if state already has role/session/agent
|
||||
|
||||
## Old code reference
|
||||
- `src/cli/mod.rs` — Cli struct, flag definitions
|
||||
- `src/main.rs` — run(), flag processing, mode branching
|
||||
Reference in New Issue
Block a user