# Olore Docs Packager 1 0 0

> Package local documentation into an olore skill. Use when the user wants to create a documentation package from their local files, or asks about olore init or building docs. Use when this capability is needed.

- Skill: `tomevault-io/olore-docs-packager-1-0-0` (Agent Skill, multi-file: 2 files)
- Install (CLI): `npx skillmds@latest add tomevault-io/olore-docs-packager-1-0-0`
- Raw SKILL.md: https://api.skillmd.com/api/skills/tomevault-io/olore-docs-packager-1-0-0/raw
- Safety review: WARNING (external: skill-scanner WARNING, skillspector PASS)
- Works with: Claude Code, Claude.ai, OpenAI Codex
- Category: Docs & Writing
- Author: tomevault-io (https://skillmd.com/u/tomevault-io)
- Updated: 2026-09-17
- Page: https://skillmd.com/skills/tomevault-io/olore-docs-packager-1-0-0

---


# Package Local Documentation

Package local documentation files into an olore skill with TOC.md, SKILL.md, and INDEX.md.

## Quick Start

If you don't have `olore.config.json` yet, run:

```bash
olore init
```

This creates `olore.config.json` and a `docs/` folder with a sample file.

## Usage

```
/olore-docs-packager-1.0.0                        # Use olore.config.json in cwd
/olore-docs-packager-1.0.0 ./custom-config.json   # Use specific config
```

## Workflow

### Step 1: Load and Validate Config

Parse `$ARGUMENTS` to find config file (default: `olore.config.json` in cwd).

```bash
cat {config_path}
```

Required fields: `name`, `version`, `description`, `contentPath`

See [contents/getting-started.md](contents/getting-started.md) for config format.

### Step 2: Copy Documentation Files

Run the copy script:

```bash
uv run scripts/copy-docs.py {config_path}
```

This copies files matching extensions, applies excludes, and outputs JSON with file count and size.

### Step 3: Determine Tier

Run the tier script:

```bash
uv run scripts/determine-tier.py {output_path}/contents
```

| Tier | Criteria |
|------|----------|
| 1 | < 30 files AND < 500KB |
| 2 | 30-100 files OR 500KB-2MB |
| 3 | > 100 files OR > 2MB |

### Step 4: Generate TOC.md

Read the appropriate template and generate TOC.md:

- Tier 1: [templates/toc-tier1.md](templates/toc-tier1.md)
- Tier 2: [templates/toc-tier2.md](templates/toc-tier2.md)
- Tier 3: [templates/toc-tier3.md](templates/toc-tier3.md)

Write to `{output_path}/TOC.md`

### Step 5: Generate SKILL.md

Read the appropriate template and generate SKILL.md:

- Tier 1: [templates/skill-tier1.md](templates/skill-tier1.md)
- Tier 2: [templates/skill-tier2.md](templates/skill-tier2.md)
- Tier 3: [templates/skill-tier3.md](templates/skill-tier3.md)

**IMPORTANT:** The `name` field MUST be `olore-{name}-{version}` to match the installed folder.

Write to `{output_path}/SKILL.md`

### Step 5.5: Generate INDEX.md

Read the appropriate index template based on tier:

- Tier 1: [templates/index-tier1.md](templates/index-tier1.md)
- Tier 2: [templates/index-tier2.md](templates/index-tier2.md)
- Tier 3: [templates/index-tier3.md](templates/index-tier3.md)

Write to `{output_path}/INDEX.md`

Format: Each content line is `keyword1,keyword2|contents/path/to/file.ext`

Keywords should be actual API names, method names, config keys extracted from the file contents.

### Step 6: Generate olore-lock.json

Create `{output_path}/olore-lock.json`:

```json
{
  "name": "{name}",
  "version": "{version}",
  "source": {
    "type": "local",
    "contentPath": "{original contentPath}"
  },
  "builtAt": "{ISO timestamp}",
  "files": {file_count}
}
```

### Step 7: Report Summary

```
Package built successfully:

  Name: olore-{name}-{version}
  Files: {file_count}
  Tier: {tier}
  Output: {output_path}

Install with:
  olore install {output_path}
```

## Config Reference

| Field | Required | Default | Description |
|-------|----------|---------|-------------|
| `name` | Yes | - | Package name (prefixed with `olore-`) |
| `version` | Yes | - | Version string |
| `description` | Yes | - | One-line description |
| `contentPath` | Yes | - | Path to docs (relative to config) |
| `outputPath` | No | `./olore-package` | Output directory |
| `extensions` | No | `[".md", ".mdx"]` | File extensions |
| `exclude` | No | `[]` | Glob patterns to exclude |

## Requirements

- `uv` - Python package manager (handles Python version automatically)

Install uv: `curl -LsSf https://astral.sh/uv/install.sh | sh`

## Example

See [contents/getting-started.md](contents/getting-started.md) for a complete walkthrough.

---
> Converted and distributed by [TomeVault](https://tomevault.io/claim/olorehq) — claim your Tome and manage your conversions.
<!-- tomevault:4.0:skill_md:2026-04-13 -->

