usage-kernel
GitHub指导使用 Codex Usage Tracker 工具查询本地使用数据。遵循“范围-批量-证据”三步循环,通过 usage_query 执行模板或自定义请求获取事实,仅在需要时调用 usage_status 和 usage_evidence,确保基于确切数据进行推理和建议。
触发场景
安装
npx skills add douglasmonsky/codex-usage-tracker --skill usage-kernel -g -y
SKILL.md
Frontmatter
{
"name": "usage-kernel",
"description": "Use the six Codex Usage Tracker tools for exact local usage facts, bounded exploration, allowance observations, and evidence timelines."
}
Codex Usage Tracker
Use the tracker as a factual local data plane. The tools return exact or explicitly graded facts; the model owns inference, explanation, and recommendations.
Use the three-step loop scope → batch → evidence:
- Scope. Start with the needed
usage_querywhenever the question maps to a curated template or a known typed request. The result carries its generation, grade, history coverage, and cache state. Callusage_statusonly when the query reports an absent or insufficiently fresh index, or when the user explicitly asks about operational state. A committed generation remains queryable while refresh is active or recommended. When the needed fields are unfamiliar, setinclude_guidance=trueon the sameusage_querycall that carries the first batch; use an empty batch only for standalone capability discovery. - Batch. Prefer one batched
usage_querycall. Its arguments always wrap one or more query requests in therequestsarray. Execute a curated server-side template with{"requests":[{"template":"<name>"}]}; for the common thread leaderboard use{"requests":[{"template":"top_threads"}]}. Templates query the hydrated snapshot and report its coverage; refresh complete history only when the user asks. For same five ranked threads, use result 1 for labels, selectors, totals, shares, and token classes; use result 2 only for cost/credits. Do not query again unless user asks for evidence. Use{"requests":[{"template":"weekly_drivers"}]}for the latest indexed seven-day thread leaderboard,{"requests":[{"template":"week_over_week"}]}for that window versus the immediately preceding seven days, and{"requests":[{"template":"latest_incremental_change"}]}for the active generation's inserted calls and leading affected thread. These templates derive their anchors from the committed snapshot; do not discover dates or generation numbers first. Use{"requests":[{"template":"model_effort"}]}for model/effort mix and{"requests":[{"template":"tools"}]}for structural tool facts. Do not repeat a successful curated template or request guidance after it returns rows. Supplyparametersonly when the selected template requires them. Otherwise send only the typed dataset, operation, dimensions, measures, filters, and limits needed for the question. Do not copy or reconstruct a returned template body. Preserve the returned generation, grade, coverage, counts, and explicit row/byte limits. Compose filters as{field, operator, value}using only the dataset fields and operators infilter_grammar;intakes an array of 1–25 values. Phase queries require one returned scope-filter template for a thread, turn, or time window. - Evidence. Rank candidates from the facts first. Call
usage_evidenceonly after ranking, and only with an exact returned logical selector. Uselive=truefor the same timeline in live mode.
Label every claim:
- fact — returned exact/deterministic data; for
partial, state the hydration preset/cutoff and never generalize to all history; - estimate — returned estimated data with coverage and provenance;
- hypothesis — model inference that still needs evidence;
- unsupported — unavailable from the returned scope and not asserted.
The optional context dataset is aggregate-only private local evidence. Its
observed_bytes and events measures are exact for the structurally observed
payload strings that were indexed. estimated_tokens is available only when
an explicit tokenizer populated it; always preserve its estimator identity and
coverage. Never describe category bytes or estimates as exact billed input
tokens, and keep unattributed_input_tokens unsupported when the response
reports it as null. If context composition is disabled, continue with the
base accounting datasets instead of starting hidden work.
Call usage_refresh only when freshness matters. Reuse the returned job; never
start a duplicate. Use usage_job_status with a bounded wait_seconds value
so the host waits; do not short-interval poll from the model. Use
usage_allowance for observed allowance facts and preserve its provenance and
limitations. Do not infer waste or productivity from token totals alone.
Never inspect raw logs as a fallback, invent missing selectors, claim narrative findings the tools did not return, or expose prompts, reasoning, tool arguments/output, secrets, or local paths.
版本历史
- 99680e8 当前 2026-07-30 23:44


