skills
This commit is contained in:
@@ -0,0 +1,52 @@
|
||||
# Capabilities And Wrappers Reference
|
||||
|
||||
Use this when deciding whether to call a capability directly, wrap it, or place
|
||||
it in a workflow.
|
||||
|
||||
## Core Split
|
||||
|
||||
```text
|
||||
raw MCP tool != workflow capability
|
||||
```
|
||||
|
||||
A raw MCP tool may be callable and still be awkward for workflows. Workflow
|
||||
capabilities are graph-facing contracts with schemas and outcomes.
|
||||
|
||||
## Discovery Order
|
||||
|
||||
1. Use `wf.admin.list_sources` to understand owners.
|
||||
2. Use `wf.workflow.list_capabilities` for graph-ready capabilities.
|
||||
3. Use `wf.workflow.inspect_capability` for one full contract.
|
||||
4. Use `wf.workflow.call_capability` to test a single workflow-facing contract.
|
||||
|
||||
## Wrapper Artifacts
|
||||
|
||||
Use a wrapper artifact when the raw provider shape needs normalization:
|
||||
|
||||
- provider status strings should become workflow outcomes
|
||||
- raw envelopes should be narrowed
|
||||
- `isError` or error blocks need explicit outcome routing
|
||||
- provider inputs are too broad or unstable for graph use
|
||||
|
||||
Saved wrappers appear as workflow capabilities under source id `workflow`, with
|
||||
names like `workflow.echo_wrapper.v1`.
|
||||
|
||||
## Wrapper Hints
|
||||
|
||||
`inspect_capability` returns `wrapper_hints`. Treat them as authoring
|
||||
scaffolding:
|
||||
|
||||
- `confidence=high`: simple shape, likely safe to validate first
|
||||
- `confidence=medium`: usable but review candidates
|
||||
- `confidence=low`: patch missing decisions before saving
|
||||
|
||||
`next_actions` is guidance, not validation authority.
|
||||
|
||||
## MCP Content Blocks
|
||||
|
||||
MCP tools often return `content: [{type, text, ...}]`. Do not map this list
|
||||
into a string state field. Filter/extract text explicitly, or write a wrapper
|
||||
that decides what content types are acceptable.
|
||||
|
||||
If a result exposes a convenience `text` field, inspect the capability schema
|
||||
and wrapper hints before using it. Do not assume every content block is text.
|
||||
Reference in New Issue
Block a user