MO

mininglamp-oss/octo-cli

Developer tools

Эта страница переведена автоматически. Технические детали смотрите в оригинале. Открыть оригинал

920 stars Качество 78 Тренд 42Apache-2.0

CLI, основанный на метаданных, для AI-ботов — 48 операций в 7 доменах, структурированный JSON-конверт ввода-вывода, ноль интерактивных подсказок.

Обзор

octo-cli — это командный интерфейс для тонкого однобинарного REST-клиента, предназначенного для вызова через exec из Agent runtimes (OpenClaw, Claude Code и подобные). Каждое вызов излучает структурированную JSON-огибающую на stdout; ошибки попадают в stderr с детерминированной таксономией. Интерактивного ввода-вывода нет. octo-cli — это . Дерево команд автоматически регистрируется при запуске из спецификаций OpenAPI 3.x, встроенных в бинарный файл. Добавление или изменение конечной точки означает редактирование спецификации, а не кода. - Вся бизнес-логика работает в бэкенд-сервисах (matters, dmworkim). CLI занимается транспортом, валидацией и форматированием. - Каждая операция объявляет свой полный путь, квалифицированный для модуля, и использует OCTO_API_BASE_URL. - Внутренний/cmdutil. Factory — контейнер зависимостей. Нет изменяемых глобальных на уровне пакета; тесты вводят заготовки через ConfigFunc / CredentialFunc / ClientFunc / RegistryFunc. - Стабильный JSON-конверт с идентификацией, данными, страницированием и метаданными по ограничению скорости; небольшой таксономии исправленных ошибок.

Обзор (машинный перевод)

octo-cli — это командный интерфейс для экосистемы Octo — тонкая, один двоичный REST-клиент, предназначенный для AI Agent Bots для вызова через exec из Agent Runtime (OpenClaw, Claude Code и подобные). Каждая инвокация излучает структурированную JSON-огибающую на stdout; ошибки попадают в stderr с детерминированная таксономия. Нет интерактивного ввода-вывода.

Архитектура

Octo-CLI управляется метаданными. Командное дерево автоматически регистрируется при запуске из спецификаций OpenAPI 3.x, встроенных в бинарный файл. Добавление или изменение конечной точки Это значит редактировать спецификацию, а не код.

Ключевые свойства:

  • Тонкий клиент. Вся бизнес-логика живёт в бэкенд-сервисах (имеет значение, dmworkim). CLI — это транспортировка, валидация и форматирование.
  • Унифицированная маршрутизация шлюза. Каждая операция объявляет свою завершённость модульно-квалифицированный путь и использует OCTO_API_BASE_URL.
  • Заводской DI. internal/cmdutil.Factory — это контейнер зависимостей. Нет мутируемых глобальных данных на уровне пакета; тесты вводят заглушки через ConfigFunc / CredentialFunc / ClientFunc / RegistryFunc.
  • Вывод с первого агента. Стабильная огибающая JSON с идентичностью, данными, пагинация и метаданные по лимиту скорости; небольшая таксономия исправленных ошибок.

Домены

Эта страница переведена автоматически. Технические детали смотрите в оригинале.

README

Показан фрагмент оригинального README. Открыть оригинал.

octo-cli

octo-cli is the command-line interface for the Octo ecosystem — a thin, single-binary REST client designed for AI Agent Bots to call via exec from agent runtimes (OpenClaw, Claude Code, and similar). Every invocation emits a structured JSON envelope on stdout; errors go to stderr with a deterministic taxonomy. There is no interactive I/O.

Architecture

octo-cli is metadata-driven. The command tree is auto-registered at startup from OpenAPI 3.x specs embedded into the binary. Adding or changing an endpoint means editing a spec, not the code.

OpenAPI specs  ──►  Registry  ──►  Service Engine  ──►  Factory  ──►  Client  ──►  Output
(embedded)         (parsed)       (cobra commands)    (DI)          (HTTP)       (envelope)

Key properties:

  • Thin client. All business logic lives in backend services (matters, dmworkim). The CLI is transport, validation, and formatting.
  • Unified gateway routing. Each operation declares its complete module-qualified path and uses OCTO_API_BASE_URL.
  • Factory DI. internal/cmdutil.Factory is the dependency container. No mutable package-level globals; tests inject stubs through ConfigFunc / CredentialFunc / ClientFunc / RegistryFunc.
  • Agent-first output. A stable JSON envelope with identity, data, pagination, and rate-limit metadata; a small fixed error taxonomy.

Domains

Domain Ops Purpose
docs 45 Documents, spreadsheets, whiteboards & PPT — lifecycle, full-text search, body content, worksheet discovery and scoped/paged reads, sheet edits (atomic replace, conditional formats, split/deduplication), board scenes, members, comments, versions, attachments
html 22 Interactive HTML documents (octo-doc, separate backend from docs) — read source with its version, publish immutable versions, drafts, per-doc share codes & per-uid grants, media assets, inline comments, agent element read/replace
drive 46 Network drive — spaces & members, folder/file tree, full-text search, single-part and resumable-style multipart blob upload, signed download, online-document mounts, share links, invites, IM-attachment transfer. Six hand-written composites bring the command tree to 49 leaves
matter 14 Todos/tasks — temporarily withheld while the backend API stabilizes
Открыть полный README на GitHub

Рекомендуемые инструменты

Попробуйте другой запрос или уберите фильтр.

Установка

npx skillfish add mininglamp-oss/octo-cli
Новичок в MCP? Начните с руководства на mcpskill.org →