CLI Reference
Complete CLI command reference
hyprlayer thoughts
Section titled “hyprlayer thoughts”Manage the thoughts system.
thoughts init
Section titled “thoughts init”Initialize thoughts for the current repository.
hyprlayer thoughts init [OPTIONS]| Option | Description |
|---|---|
--force | Force reconfiguration even if already set up |
--directory <NAME> | Specify the repository directory name (skips prompt) |
--profile <NAME> | Use a specific thoughts profile |
--backend <KIND> | Storage backend: git (default), obsidian, notion, anytype. See Storage Backends |
--vault-path <PATH> | Obsidian vault path (required with --backend obsidian --yes) |
--vault-subpath <NAME> | Subfolder within the Obsidian vault (default: hyprlayer) |
--parent-page-id <ID> | Notion parent page ID (required with --backend notion --yes) |
--database-id <ID> | Existing Notion database ID to reuse (skips lazy creation) |
--space-id <ID> | Anytype space ID (required with --backend anytype --yes) |
--type-id <ID> | Existing Anytype type ID to reuse (skips lazy creation) |
--api-token-env <NAME> | Env var holding the Anytype API token (default: ANYTYPE_API_KEY). Ignored for notion — hyprlayer uses the agent’s Notion connector |
-y, --yes | Run without interactive prompts |
--config-file <PATH> | Path to config file |
thoughts uninit
Section titled “thoughts uninit”Remove thoughts setup from the current repository.
hyprlayer thoughts uninit [OPTIONS]| Option | Description |
|---|---|
--force | Force removal even if not in configuration |
--config-file <PATH> | Path to config file |
thoughts sync
Section titled “thoughts sync”Manually sync thoughts to the thoughts repository.
hyprlayer thoughts sync [OPTIONS]| Option | Description |
|---|---|
-m, --message <MSG> | Commit message for sync |
--config-file <PATH> | Path to config file |
thoughts status
Section titled “thoughts status”Show status of the thoughts repository.
hyprlayer thoughts status [OPTIONS]| Option | Description |
|---|---|
--config-file <PATH> | Path to config file |
thoughts config
Section titled “thoughts config”View or edit thoughts configuration.
hyprlayer thoughts config [OPTIONS]| Option | Description |
|---|---|
--edit | Open configuration in editor |
--json | Output configuration as JSON |
--config-file <PATH> | Path to config file |
thoughts profile create
Section titled “thoughts profile create”Create a new thoughts profile.
hyprlayer thoughts profile create <NAME> [OPTIONS]| Option | Description |
|---|---|
--repo <PATH> | Thoughts repository path |
--repos-dir <NAME> | Repos directory name |
--global-dir <NAME> | Global directory name |
--config-file <PATH> | Path to config file |
thoughts profile list
Section titled “thoughts profile list”List all thoughts profiles.
hyprlayer thoughts profile list [OPTIONS]| Option | Description |
|---|---|
--json | Output as JSON |
--config-file <PATH> | Path to config file |
thoughts profile show
Section titled “thoughts profile show”Show details of a specific profile.
hyprlayer thoughts profile show <NAME> [OPTIONS]| Option | Description |
|---|---|
--json | Output as JSON |
--config-file <PATH> | Path to config file |
thoughts profile delete
Section titled “thoughts profile delete”Delete a thoughts profile.
hyprlayer thoughts profile delete <NAME> [OPTIONS]| Option | Description |
|---|---|
--force | Force deletion even if in use |
--config-file <PATH> | Path to config file |
hyprlayer ai
Section titled “hyprlayer ai”Manage AI tool configuration.
ai configure
Section titled “ai configure”Configure AI tool and install agent files.
hyprlayer ai configure [OPTIONS]| Option | Description |
|---|---|
--force | Force reconfiguration even if already set up |
--config-file <PATH> | Path to config file |
ai status
Section titled “ai status”Show current AI tool configuration: agent tool, install location, (for OpenCode) provider and Sonnet/Opus model IDs, and — once an auto-reinstall has run — the cached short bundle SHA and a humanized last-check timestamp (“4 hours ago”). Pass --json for a machine-readable payload that includes the full agentsInstalledSha and the raw lastAgentCheck Unix timestamp.
hyprlayer ai status [OPTIONS]| Option | Description |
|---|---|
--json | Output as JSON |
--config-file <PATH> | Path to config file |
ai reinstall
Section titled “ai reinstall”Reinstall AI agent files.
hyprlayer ai reinstall [OPTIONS]| Option | Description |
|---|---|
--config-file <PATH> | Path to config file |
hyprlayer storage
Section titled “hyprlayer storage”Query and update the active thoughts storage backend. These subcommands are primarily called by slash-command dispatch preambles, but are usable interactively for debugging.
storage info
Section titled “storage info”Show the resolved backend, settings, and the unified schema contract for the current repository.
hyprlayer storage info [OPTIONS]| Option | Description |
|---|---|
--json | Emit a structured JSON payload slash commands parse |
--config-file <PATH> | Path to config file |
The JSON payload includes backend, settings (backend-specific), mappedName, projectPath, and the full schema array documenting the 10 metadata fields every thought carries. See Storage Backends.
storage set-database-id
Section titled “storage set-database-id”Persist the Notion database ID after a slash command lazily creates it via MCP. Errors if the active backend is not notion.
hyprlayer storage set-database-id <ID>storage set-type-id
Section titled “storage set-type-id”Persist the Anytype type ID after a slash command lazily creates it via MCP. Errors if the active backend is not anytype.
hyprlayer storage set-type-id <ID>hyprlayer codex
Section titled “hyprlayer codex”Utility subcommands for working with the OpenAI Codex CLI. Used internally by /code_review but available for ad-hoc piping.
codex stream
Section titled “codex stream”Read Codex CLI --json (JSONL) output on stdin and write readable lines to stdout. Pure pipe transformer — no config, no network, no auth.
codex exec "<prompt>" --json | hyprlayer codex stream [OPTIONS]| Option | Description |
|---|---|
--no-thinking | Suppress [codex thinking] lines (reasoning events) |
--no-tool-calls | Suppress [codex ran] lines (command execution events) |
Output:
SESSION_ID:<thread_id>— emitted once when codex opens a thread[codex thinking] <text>— reasoning events (suppress with--no-thinking)[codex ran] <command>— tool calls (suppress with--no-tool-calls)- Agent messages — printed verbatim
tokens: <total>— input + output token total at end of turn
A turn.failed event prints [codex turn.failed] <error> to stderr. If the stream ends without a turn.completed or turn.failed event, a [warning] no turn.completed event — possible mid-stream disconnect is emitted on stderr. Broken-pipe on stdout (e.g. piping into head) is treated as a clean exit.
The parser is permissive about schema drift: missing fields, malformed JSON lines, and unknown event types are silently skipped rather than fatal.