Skip to content

A bare logos import at a terminal opens a menu of the sources to import from - #116

Merged
Coder8124 merged 1 commit into
mainfrom
import-picker
Nov 4, 2026
Merged

Coder8124 merged 1 commit into
mainfrom
import-picker

Conversation

@Coder8124

Copy link
Copy Markdown
Owner

logos import with no --from, at a terminal, opens a checklist of the six sources: claude-mem, CLAUDE.md/AGENTS.md, Cursor rules, Claude Code's auto memory, transcripts and git. Each row says where its imports land.

  • Space ticks a row, Enter imports every ticked source in menu order, and q or Esc cancels with "Nothing imported — the menu was cancelled." Enter with nothing ticked imports the highlighted row.
  • Each source runs exactly what logos import --from <source> runs. Flags given (--dry-run, --yes, --project) go to every source.
  • One source failing does not stop the rest. Each failure is named on stderr as it happens, and the command exits with N of M sources failed: ….
  • With no terminal, inside a hook, or with LOGOS_HOOK set, it still prints the usage error and never waits on a keypress.
  • The checklist is the existing picker with a checked slice; plain menus are unchanged.

Prompts after the menu read through the menu's own buffered reader. Before this, a y typed straight after the Enter was lost into the menu's buffer. This covered readAnswer and ingest's one-time consent question, which is the first thing ticking transcripts asks. Each fix has a test that fails without it.

Verified:

  • go build, go test ./..., go vet and gofmt -l are clean, and the chaos tier passes.
  • Driven on a real pty in a scratch vault: draw, tick, move, cancel, and two ticked sources run in order under ── 1 of 2 headers with --dry-run.

@Coder8124
Coder8124 merged commit 0313c7e into main Nov 4, 2026
12 checks passed
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.

1 participant