Skill authoring —Skill.tool + use_skillmount onto an app MCP registry.
Peer dependencies (cryptographyfor envelope signing) are imported lazily
inside call paths (milo pattern), soimport chirp.skillstays light.
skill.mount
| Name | Type | Default | Description |
|---|---|---|---|
type
|
|
— | |
qualified_name
|
|
— | |
element_type
|
|
— | |
description
|
|
— | |
source_file
|
|
— | |
line_number
|
|
— | |
is_autodoc
|
|
— | |
autodoc_element
|
|
— | |
_autodoc_template
|
|
— | |
_autodoc_url_path
|
|
— | |
_autodoc_page_type
|
|
— | |
title
|
|
— | |
doc_content_hash
|
|
— |
Symbols on this page
A named, versioned skill whose tools return signedEnvelopevalues.
Decorate handlers withtool(), then mount with use_skill()::
skill = Skill( "demo",…Mountskill's tools onto app's MCP tool registry via app.tool.
Registersskill as an app domain so app.freeze()finalizes an
immutable …
Skill
class
A named, versioned skill whose tools return signedEnvelopevalues.
Decorate handlers withtool(), then mount with use_skill()::
skill = Skill(
"demo",
version="1.0.0",
private_key=private,
key_id="demo-1",
public_key=public,
)
@skill.tool("add", description="Add two integers")
def add(a: int, b: int) -> int:
return a + b
@skill.tool("hook", scopes=("webhook:write",))
def hook(payload: dict) -> dict:
return payload
use_skill(app, skill)
app.register_scope("webhook:write")
use_skill
function
def use_skill(app: App, skill: Skill) -> Skill
Mountskill's tools onto app's MCP tool registry via app.tool.
Registersskill as an app domain so app.freeze()finalizes an
immutableManifestwith a content digest (milo
register_domainprecedent). Eagerly verifies the Ed25519 peer
dependency when a signing key is present so missingcryptographyfails
at setup rather than on the first tool call. Registers the
skill_contract app.check()category (chirp_ui
register_contract_check pattern). Returns skill.
Parameters
| Name | Type | Default | Description |
|---|---|---|---|
app
|
App
|
— | |
skill
|
Skill
|
— |
View source · /home/runner/work/chirp/chirp/site/../src/chirp/skill/mount.py:1