yao/openapi/kb/doc.yml
Max efc84fbb97 feat(doc): add yao doc CLI commands and YAML documentation for all packages
Implement yao doc process list/inspect/validate and yao doc runtime
list/inspect/validate commands. Validate uses engine addressing logic
(process.Of) and checks dynamic-ID group registries (model, store, fs,
task, schedule) to verify resources actually exist.

- cmd/doc/: CLI command tree with process and runtime subcommands
- cmd/root.go: wire docCmd into rootCmd
- 27 process doc.yml + doc.go pairs across yao packages
- cmd/doc/doc_test.go: integration tests

Made-with: Cursor
2026-04-23 21:37:43 +08:00

118 lines
3.5 KiB
YAML

group: kb
type: process
entries:
# Collection Management
- name: collection.create
desc: Create a new knowledge base collection with embedding configuration
args:
- name: params
type: object
required: true
desc: "Collection parameters: {id, metadata: {name, description}, embedding_provider_id, embedding_option_id, locale, config: {distance, index_type, m, ef_construction, ef_search}}"
return:
type: object
desc: "Object with collection_id and message"
- name: collection.remove
desc: Remove a collection and all its documents
args:
- name: collectionID
type: string
required: true
desc: Collection ID to remove
return:
type: object
desc: "Object with collection_id, removed status, documents_removed count, and message"
- name: collection.get
desc: Retrieve a collection by its ID
args:
- name: collectionID
type: string
required: true
desc: Collection ID to retrieve
return:
type: object
desc: Collection details including metadata, embedding config, status, etc.
- name: collection.exists
desc: Check if a collection exists
args:
- name: collectionID
type: string
required: true
desc: Collection ID to check
return:
type: object
desc: "Object with collection_id and exists (bool)"
- name: collection.list
desc: List collections with pagination and filtering
args:
- name: filter
type: object
required: false
desc: "Filter parameters: {page, pagesize, keywords, status, embedding_provider_id, system, select, sort}"
return:
type: object
desc: Paginated result with data array, page, pagesize, total, pagecnt, next, prev
- name: collection.updatemetadata
desc: Update the metadata of an existing collection
args:
- name: collectionID
type: string
required: true
desc: Collection ID to update
- name: params
type: object
required: true
desc: "Update parameters: {metadata: {name, description}}"
return:
type: object
desc: "Object with collection_id and message"
# Document Management
- name: documents.addfile
desc: Add a document to a collection from an uploaded file
args:
- name: params
type: object
required: true
desc: File upload parameters including collection_id and file data
return:
type: object
desc: Document creation result with document_id
- name: documents.addtext
desc: Add a document to a collection from raw text content
args:
- name: params
type: object
required: true
desc: Text document parameters including collection_id, content, and metadata
return:
type: object
desc: Document creation result with document_id
- name: documents.addurl
desc: Add a document to a collection by fetching content from a URL
args:
- name: params
type: object
required: true
desc: URL document parameters including collection_id and URL
return:
type: object
desc: Document creation result with document_id
- name: documents.getcontents
desc: Retrieve content for one or more documents by their IDs
args:
- name: documentIDs
type: any
required: true
desc: "A single document ID (string) or an array of document IDs"
return:
type: array
desc: Array of objects with document_id, name, content, content_type, etc.