Open Knowledge CLI Documentation
Frontmatter6 fields
type
Decision
title
Product Interface Direction
description
Organize the CLI around one primary path and optional workflows over one OKF knowledge base.
timestamp
status
accepted

Product Interface Direction

Decision

Open Knowledge gives one lifecycle for an OKF knowledge base. All product interfaces use the same Git-native Markdown object.

These interfaces include search, the viewer, MCP, agents, jobs, exports, and runtime generations.

The CLI exposes one primary path and three secondary workflow groups:

WorkflowCommands
Start heresetup, search, validate
Work locallyagent, integration, get, list, view
Share and connectexport, mcp, connect, disconnect, registry
Automate and operateautomation

The advanced section contains the deterministic scaffold, prompt, ast, and spec tools.

Interface Rules

  1. Root help starts with user outcomes.
  2. Command pages contain the command details.
  3. Each capability has one canonical command.
  4. Deterministic OKF operations do not require a model, network, or service.
  5. Service roles use the same validation, publication, retrieval, and export contracts.
  6. Provider configuration stays under automation deploy.
  7. Runtime operations stay under automation runtime.

The primary activation flow is:

okn setup

The command prints a portable setup prompt. A person runs it from the project and copies the complete output into an existing agent. The optional --agent mode can launch a runtime, but it is not the primary flow.

The agent also demonstrates one search that uses source evidence. Thus, activation does not require another command.

Use search independently after activation. Use validate independently after activation. scaffold remains an agent-free primitive, not a second activation path.

Use prompt setup|from|rules|review for additional portable instructions. Use export html|json|graph|tar for publication. Use automation jobs|insights|runtime|deploy for unattended and hosted work.

Use the top-level connect command to add a connection. Use the top-level disconnect command to remove a connection.

Commands remain separate when they have different process or security boundaries. The local view, stdio mcp, and hosted runtime are separate interfaces.

Powered by OpenKnowledge.sh