Create baseline context from .context/session/in/ folder with manifest-driven organization (run once per project). Use when bootstrapping project context, setting up .context/session/ctx/ snapshot. Triggers include "create context", "bootstrap context", "setup context", "init context".
63
76%
Does it follow best practices?
Run evals on this skill
Adds up to 20 points to the overall score
View guide
Passed
No findings from the security scan
Fix and improve this skill with Tessl
tessl review fix ./skills/agentic-harness/create-context/SKILL.mdBootstrap project context from .context/session/in/ folder → .context/session/ctx/ snapshot + baseline + RISEN INPUT table.
CRITICAL: After EVERY AskUserQuestion call, check if answers are empty/blank. Known harness bug affecting several agentic CLIs: outside Plan Mode, the AskUserQuestion tool can silently return empty answers without showing UI.
If answers are empty: DO NOT proceed with assumptions. Instead:
.context/session/in/: Immutable bootstrap (user dumps raw docs, never modified by commands).context/session/ctx/: Actionable snapshot (generated: manifest + summaries + copied files)[ -d .context/session/in/ ] || error "No .context/session/in/ folder found. Create it and add source files first."
[ -d .context/session/ctx/ ] && [ "$1" != "--force" ] && error ".context/session/ctx/ exists. Use --force to recreate."Skip security-sensitive files: .env*, *credentials*, *secrets*, *token*, *.key, *.pem, *.crt
.context/session/in/**/*.{md,txt,csv,yaml,json}Write .context/session/ctx/manifest.yaml — see references/reference.md for schema.
Token estimation: tokens ≈ words / 0.75 (via wc -w)
| Priority | ≤ threshold | > threshold, ≤25K | > 25K |
|---|---|---|---|
| HIGH | ≤1500 → inline | summarize directly | summarize via sub-agent |
| MEDIUM | ≤2500 → inline | summarize directly | summarize via sub-agent |
| LOW | reference only | — | — |
Copy HIGH/MEDIUM files to .context/session/ctx/, preserving subdirectory structure.
.context/session/ctx/{nn}-{basename}-summary-llm.mdsummarize-for-context) for files >25K tokensCreate .context/session/CONTEXT-baseline-llm.md with inline content + summary refs + LOW references.
Target: ≤2000 tokens.
Report: file counts, RISEN INPUT table, suggest /save-context baseline.
See references/reference.md for manifest schema, baseline template, and validation rules.
.context/session/in/ is intentional input; the manifest reflects it faithfully..context/session/in/ and no snapshot exists yet..context/session/ctx/ directory is missing or empty and a downstream skill (e.g., load-context) cannot find a manifest..context/session/in/ have been replaced or significantly updated and a fresh snapshot is required (use --force)..context/session/ctx/ already contains a current manifest and the source files have not changed — re-running without --force is a no-op and may discard existing summaries..context/session/in/ is empty; there is nothing to scan and the skill will error..context/session/ctx/ is not permitted.save-context instead.NEVER create context without scanning .context/session/in/ — Skipping the input scan produces incomplete context. Why: Source materials in the in-folder define the scope; a context built without them is speculative and will mislead downstream agents.
# BAD - manifest fabricated from conversation memory, no scan performed
high_priority: []
medium_priority: []
low_priority: []
# (skill never globbed .context/session/in/**/*.{md,txt,csv,yaml,json})
# GOOD - manifest reflects an actual glob of the in-folder
high_priority:
- path: design-doc.md
reason: "architecture decisions referenced throughout the session"
medium_priority:
- path: requirements.csv
reason: "acceptance criteria, read once for scope"
low_priority: []NEVER write a manifest without all three priority sections (high/medium/low) — Omitting a section causes validation failures in validate-manifest.sh. Why: The schema requires all three arrays to be present, even if empty, so that consumers can iterate predictably.
NEVER copy security-sensitive files into .context/session/ctx/ — Files matching .env*, *credentials*, *secrets*, *token*, *.key, *.pem, *.crt must be skipped. Why: The ctx snapshot may be committed or shared; leaking credentials through it is a serious security risk.
# BAD - copies everything, including a real secrets file, into a folder that may get committed
cp -r .context/session/in/* .context/session/ctx/
# GOOD - skip security-sensitive patterns before copying
find .context/session/in/ -type f \
! -name '.env*' ! -name '*credentials*' ! -name '*secrets*' \
! -name '*token*' ! -name '*.key' ! -name '*.pem' ! -name '*.crt' \
-exec cp {} .context/session/ctx/ \;NEVER inline files that exceed the token threshold — Files above 1500 tokens (HIGH) or 2500 tokens (MEDIUM) must be summarized, not inlined verbatim. Why: Over-sized baselines break the 2000-token budget and degrade agent performance on every subsequent load.
NEVER run the skill concurrently with save-context or load-context — Parallel writes to .context/session/ctx/ corrupt the manifest. Why: There is no locking mechanism; the last writer wins and partial manifests are silently invalid.
Creating context at session start:
# Drop source files into the immutable in-folder
cp design-doc.md .context/session/in/
cp requirements.csv .context/session/in/
# Invoke the skill — it scans in-folder, classifies files, writes manifest
# Output: .context/session/ctx/manifest.yaml + summaries + CONTEXT-baseline-llm.mdForce-recreating context after source files change:
# Update a source document
cp updated-spec.md .context/session/in/spec.md
# Re-run with --force to overwrite the existing ctx snapshot
# The skill will re-scan, re-prioritize, and rewrite all ctx artefactsInspecting the generated manifest and baseline:
# After the skill completes, review the generated artefacts
ls .context/session/ctx/
# manifest.yaml 01-design-doc-summary-llm.md ...
# The baseline provides a single load point for all context
cat .context/session/CONTEXT-baseline-llm.mda1083f4
Also appears in
last in sync Aug 28, 2026
If you maintain this skill, you can claim it as your own. Once claimed, you can manage eval scenarios, bundle related skills, attach documentation or rules, and ensure cross-agent compatibility.