Skip to main content

Seed Files

Starter files the plugin copies into your project on first run — edit them to make jaan.to yours.


What Is It?

When you first use the plugin, the bootstrap hook copies default files into your project's jaan-to/ directory. These are seed files — starting points you customize for your team and stack.

Every seed follows a skip-if-exists rule: your edits are never overwritten. Delete a file and bootstrap re-copies the default next session.


What Gets Seeded

CategorySource (plugin)Destination (project)What's Inside
Settingsscripts/seeds/settings.yamljaan-to/config/settings.yamlPath overrides, learning strategy, language preference, template paths
Contextscripts/seeds/*.mdjaan-to/context/5 required: tech.md, team.md, integrations.md, config.md, boundaries.md + 2 optional: localization.md, tone-of-voice.md
Templatesskills/*/template.mdjaan-to/templates/{skill}.template.mdOutput structure for each skill (~16 files)
Docsplugin docs/STYLE.md + docs/extending/create-skill.mdjaan-to/docs/Style guide, skill creation spec
Learn filesskills/*/LEARN.mdjaan-to/learn/{skill}.learn.mdBetter questions, edge cases, workflow tips (~16 files)
Research index(generated)jaan-to/outputs/research/README.mdIndex scaffold for research outputs

Your First Steps

After bootstrap runs, customize files in this order:

  1. Edit jaan-to/context/tech.md — Replace the placeholder stack with yours. Or run /jaan-to:detect-dev to audit your codebase and produce evidence-backed findings.
  2. Fill jaan-to/context/team.md — Team size, ceremonies, sprint settings, approval workflows.
  3. Add tools to jaan-to/context/integrations.md — Jira project keys, GitHub repos, Slack channels, analytics IDs.
  4. Customize a template (optional) — Edit any file in jaan-to/templates/ to change how a skill structures its output.
  5. Override paths (advanced) — Uncomment settings in jaan-to/config/settings.yaml to redirect where outputs, templates, or learn files live. See Customization Guide.

Example

Customizing tech.md for a Laravel project:

Before (seed default):

> Project: {project-name}

### Backend
- **Language**: Python 3.11
- **Framework**: FastAPI 0.104

After (your version):

> Project: Acme Dashboard

### Backend
- **Language**: PHP 8.3
- **Framework**: Laravel 11
- **Database**: MySQL 8

Result: When you run /jaan-to:pm-prd-write, the generated PRD references Laravel and MySQL. When you run /jaan-to:dev-be-task-breakdown, task cards use Laravel conventions.


Metrics

The plugin tracks usage locally. Nothing leaves your machine.

MetricLocationTrigger
Session logjaan-to/metrics/sessions.jsonlStop hook — one JSON line per session end
Bootstrap statsstdout JSONSessionStart — files_copied counts per category
Skill budgetscripts/validate-skills.shManual or CI — chars used vs 15,000 budget
Install healthscripts/verify-install.shManual — checks passed/failed, file counts

jaan-to/metrics/ is created by the Stop hook, not bootstrap. The session log grows over time — safe to delete or truncate.


Tips

  • Reset a file: Delete it from jaan-to/ and start a new session — bootstrap restores the default.
  • Check completeness: Run scripts/verify-install.sh for a full health report.
  • Placeholders: Context seeds use {placeholder} syntax. Fill what's relevant, delete sections you don't need.
  • Template variables: Templates use {{handlebars}} variables. Change the structure around them, but keep the variables so skills can fill them.
  • Learning strategy: settings.yaml defaults to merge — plugin lessons combine with any project-specific lessons you add.