Skip to content
Back to skills

Sweet Index

ASecurity

Use when (re)indexing a Sweet Search project. Runs the full-profile indexer with GPU model prewarming (CoreML cascade on M3+, candle Metal on M1/M2, ORT CPU elsewhere), kills ORT CPU models during indexing to avoid memory contention, and rewarms them for query readiness on completion. Incremental runs under 20 files stay on ORT CPU.

  • 23 stars
  • 0 votes
  • 0 copies
  • 0 views
  • Added September 24, 2026
ai-agentsrustgobashsqlnodebackend

Security analysis

A100/100

Scanned September 24, 2026

npx -y skills add mrsladoje/sweet-search --skill sweet-index --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of Sweet Index?

Add the live security badge to your README. It updates with every re-scan.

Security grade badge for Sweet Index
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/mrsladoje-sweet-index/badge)](https://www.skillsdirectory.com/skills/mrsladoje-sweet-index)

More formats (shields.io, HTML) on the badges page. Keep it an A: scan every change in CI with Pro.

Download with Pro
SKILL.md
---
name: sweet-index
description: "Use when (re)indexing a Sweet Search project. Runs the full-profile indexer with GPU model prewarming (CoreML cascade on M3+, candle Metal on M1/M2, ORT CPU elsewhere), kills ORT CPU models during indexing to avoid memory contention, and rewarms them for query readiness on completion. Incremental runs under 20 files stay on ORT CPU."
category: developer-tooling
priority: high
tokenEstimate: 600
agents: []
implementation_status: active
optimization_version: 1.0
last_optimized: 2026-04-17
dependencies: [sweet-search]
quick_reference_card: true
tags: [indexing, embeddings, late-interaction, gpu, coreml, metal, ort, prewarming, sweet-search]
trust_tier: 1
---

# /sweet-index — Index the Codebase

<default_to_action>
When the user invokes `/sweet-index`, run the full-profile indexing command
immediately. Do not ask clarifying questions — the indexer is idempotent, safe
to re-run, and handles incremental vs full reindex automatically.
</default_to_action>

## What this does

Runs `core/indexing/index-codebase-v21.js` with the `--full` flag so every
artifact is rebuilt from scratch. The indexer itself manages the model
lifecycle end-to-end:

1. **Kill resident ORT CPU models** — prevents memory contention and mutex
   fighting with the GPU models about to be loaded.
2. **Detect best backend** via `hardware-capability.js` —
   `coreml-cascade` on M3+ Apple Silicon, `candle-metal` on M1/M2,
   `candle-cuda` on Linux + NVIDIA, and the optimized **ORT INT8 CPU** path
   on any host with no usable accelerator (no GPU models are loaded there).
3. **Load GPU models + warmup forward pass** (accelerator hosts only) —
   compiles Metal pipelines, CoreML variant bundles, and BLAS thread pools
   so the first indexing batch pays no cold-start cost.
4. **Index the codebase** — code graph, vector embeddings, HNSW,
   late-interaction index, quantized artifacts, sparse-gram index.
5. **Kill GPU models** — releases Metal queues and Neural Engine.
6. **Load + warmup ORT CPU models** — both embedding and LI get one dummy
   forward pass so the first query after indexing is warm.

On small-changeset incremental runs (under 20 files) — and on any host with
no usable accelerator — the indexer skips the GPU swap entirely and indexes on
the optimized ORT INT8 CPU path.

## Usage

```bash
node core/indexing/index-codebase-v21.js --full
```

Or via npm script:

```bash
npm run index:full
```

## What to report

After the command completes, pick out these lines from stderr:

- `GPU index pool armed (<backend>)` → confirms which backend was used
- `embed=<load>+<warm>ms, li=<load>+<warm>ms` → prewarm timings
- `CPU models warmed for queries: load=…ms, warm=…ms (embed=ok, li=ok)` →
  confirms ORT CPU is armed for subsequent searches
- `INDEXING COMPLETE (FULL)` with `Duration`, `Files indexed`, `Entities`,
  `Relationships` → headline stats

## Flags (full list)

| Flag | Purpose |
|------|---------|
| `--full` | Full reindex — rebuild everything. Always armed via this skill. |
| `--no-late-interaction` | Skip LI index (faster, lower quality). Rarely wanted. |
| `--late-interaction-pool=N` | Token pooling factor (2 halves tokens). |
| `--vectors-only` | Skip code graph — breaks GraphRAG. Avoid. |
| `--graph-only` | Only build code graph, skip vectors. |
| `--verbose` / `-v` | Force per-phase progress output. |

Do **not** pass `--sqlite-fast` — it disables fsync between phases and is
only safe for benchmarking on throwaway state.

## When not to use

- **Single-file edits**: the indexer auto-detects small changesets and stays
  on CPU, so `/sweet-index` is still safe, but a watcher-triggered
  incremental run is cheaper.
- **Queries feel slow**: usually means the ORT CPU models are not loaded.
  Run `/sweet-index` once to rewarm them, or restart the sweet-search
  server.

Attribution

Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.

Comments

Loading comments…