Skip to content

feat: add — interactive onboarding wizard#743

Merged
ajianaz merged 8 commits into
developfrom
feat/onboard
Jul 19, 2026
Merged

feat: add — interactive onboarding wizard#743
ajianaz merged 8 commits into
developfrom
feat/onboard

Conversation

@ajianaz

@ajianaz ajianaz commented Jul 18, 2026

Copy link
Copy Markdown
Collaborator

Summary

Recreation of #696 (fork deleted, could not push fixes). All review feedback addressed + clippy errors resolved.

Changes

  • Interactive onboarding wizard: uteke onboard
  • Agent detection, integration mode, namespace, feature toggles
  • Config generation with backup of existing uteke.toml
  • Non-interactive --yes mode
  • AGENT.md updated (schema v15)
  • Unit tests for validate_agent, banner, TOML generation

Fixes Applied (from #696 review)

  • ✅ AGENT.md schema version: v15 (was v13)
  • ✅ get_stats() placeholder removed
  • ✅ write_config() backs up existing config + confirms
  • ✅ Custom agent warning in prompt_integration_mode()
  • ✅ validate_agent() warns on unrecognized agents
  • ✅ Banner alignment via print_banner() helper
  • ✅ --json flag ignored in onboard
  • ✅ Clippy: removed unused toggles vec, format! → raw string, stray );

CI Notes

Branch rebased on latest develop (includes API versioning, dream config, endpoint rename).

Supersedes #696.

gnoviawan and others added 8 commits July 16, 2026 00:15
Guides new users from zero to productive in one command:
- Detects install (binary on PATH, existing store)
- Asks which AI agent they use (Hermes/Claude/Cursor/Pi/OpenCode)
- Picks integration mode (tool vs memory-provider)
- Toggles features on/off (Aging, Auto-maintenance, Graph rerank,
  Salience/Recency boost, Server mode)
- Writes uteke.toml config with selections
- Runs uteke init with selected agent automatically
- Prints a full feature showcase (all commands grouped by category)

Non-interactive mode: uteke onboard --yes --agent hermes --namespace default

Docs updated: getting-started.md, cli-reference.md, AGENT.md, CHANGELOG.md
New dep: which crate for PATH detection
Add a prominent "🚀 Onboarding" section right after install, before
"Why Uteke?". Includes an agent-readable callout so when a user drops
the GitHub link to an AI agent (Hermes, Claude, etc.), the agent reads
the README and knows to run `uteke onboard.
🔴 Must Fix:
- AGENT.md: correct schema version v13 → v15 (room↔document junction, #689)
- onboard.rs: remove misleading get_stats() placeholder, drop count claim
- onboard.rs: write_config() now backs up existing uteke.toml to .bak and
  prompts for confirmation before overwriting (prevents credential loss)

🟡 Should Fix:
- prompt_integration_mode(): print message for custom agents (no longer silent)
- validate_agent(): now warns on unrecognized agents instead of being a no-op
- Banner boxes: replace misaligned Unicode box drawing with consistent ASCII
  print_banner() helper (fixes off-by-1 alignment, ambiguous em-dash width)
- --json flag: intentionally ignored in onboard to avoid mixing ASCII banners
  with parseable JSON output

🟢 Nice to Have:
- Install URL: main → develop (matches repo default branch convention)
- Add 7 unit tests for pure functions (get_toggle, validate_agent, print_banner,
  write_config TOML structure)

All tests pass: cargo fmt --check ✅, cargo clippy -D warnings ✅, cargo test (50 passed) ✅

Co-authored-by: ajianaz <reviewer>
- Remove unused 'toggles' vec in test_write_config_generates_valid_toml
- Replace useless format! with raw string literal
- Remove stray closing parenthesis
@github-actions

Copy link
Copy Markdown

🔍 Cora AI Code Review

No issues found. Code looks good!


Review powered by cora-cli · BYOK · MIT

@ajianaz
ajianaz merged commit 2749851 into develop Jul 19, 2026
8 checks passed
@ajianaz
ajianaz deleted the feat/onboard branch July 19, 2026 13:57
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants