Hypermedia skill console — registry browse, detail, reliability score.
Human face for an Orrery-style host:Page/Fragmentlist + detail
pages over a mountedSkillRegistry. Machine
discovery and the live invocation SSE bridge stay on
mount_skills(); this module renders the
browse/detail UI and sse-connects the detail live-log hook when the
registry mounted an invocation log. Env-var key presence plugs in via
key_status (pass as_key_status_fn()).
skill.console
| 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
Smoke-derived reliability for one skill (publish-oracle pass rate).
Mutable map of skill name →ReliabilityScore.
Thread-safe for concurrentrecordduring setup / smoke runs.
Human-facing contract snapshot for the skill detail page.
One provider-key row (name only; never secret values).
Evaluateskill_contractfor a live skill (detail-page context).
Build key-management rows; secrets never appear (hook for #984).
Register hypermedia browse + skill detail routes forregistry.
Returns the normalized console path. Templates load via
PackageLoader("chirp.skill", "templates").
scoressupplies smoke-derived …
ReliabilityScore
class
Smoke-derived reliability for one skill (publish-oracle pass rate).
ReliabilityStore
class
Mutable map of skill name →ReliabilityScore.
Thread-safe for concurrentrecordduring setup / smoke runs.
ContractSummary
class
Human-facing contract snapshot for the skill detail page.
KeyStatusRow
class
One provider-key row (name only; never secret values).
contract_summary_for_skill
function
def contract_summary_for_skill(skill: Any, *, env: str = 'development') -> ContractSummary
Evaluateskill_contractfor a live skill (detail-page context).
Parameters
| Name | Type | Default | Description |
|---|---|---|---|
skill
|
Any
|
— | |
env
|
str
|
'development'
|
key_status_rows
function
def key_status_rows(skill_name: str, provider_keys: tuple[str, ...], key_status: KeyStatusFn | None) -> tuple[KeyStatusRow, ...]
Build key-management rows; secrets never appear (hook for #984).
Parameters
| Name | Type | Default | Description |
|---|---|---|---|
skill_name
|
str
|
— | |
provider_keys
|
tuple[str, ...]
|
— | |
key_status
|
KeyStatusFn | None
|
— |
mount_console
function
def mount_console(app: App, registry: SkillRegistry, *, console_path: str = DEFAULT_CONSOLE_PATH, scores: ReliabilityStore | Mapping[str, ReliabilityScore | SmokeReport] | None = None, key_status: KeyStatusFn | None = None) -> str
Register hypermedia browse + skill detail routes forregistry.
Returns the normalized console path. Templates load via
PackageLoader("chirp.skill", "templates").
scores supplies smoke-derived ReliabilityScorevalues (or a
liveReliabilityStore). key_statusis an optional #984 hook
that reports provider-key presence only — never secret values.
Parameters
| Name | Type | Default | Description |
|---|---|---|---|
app
|
App
|
— | |
registry
|
SkillRegistry
|
— | |
console_path
|
str
|
DEFAULT_CONSOLE_PATH
|
|
scores
|
ReliabilityStore | Mapping[str, ReliabilityScore | SmokeReport] | None
|
None
|
|
key_status
|
KeyStatusFn | None
|
None
|
View source · /home/runner/work/chirp/chirp/site/../src/chirp/skill/console.py:1