Skip to content
Back to skills

Cocopull

ASecurity

CocoPull session archive search — full-text search across past sessions. Handles $pull search "<query>" with --since and --feature filters, and $pull index rebuild.

  • 724 stars
  • 0 votes
  • 0 copies
  • 2 views
  • Added June 5, 2026
ai-agentsnode

Security analysis

A100/100

Pro scans all 3 files and shows the line behind each finding

Scanned June 5, 2026

npx -y skills add Snowflake-Labs/cocoplus --skill cocopull --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of Cocopull?

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

Security grade badge for Cocopull
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/snowflake-labs-cocopull/badge)](https://www.skillsdirectory.com/skills/snowflake-labs-cocopull)

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: pull-search
description: CocoPull session archive search — full-text search across past sessions. Handles $pull search "<query>" with --since and --feature filters, and $pull index rebuild.
version: "1.0.0"
author: CocoPlus
tags:
  - cocopull
  - context-distillation
  - session-search
user-invocable: true
blocking: false
---

## Objective

Search the CocoPull session archive for relevant past sessions.

Before proceeding, verify that `.cocoplus/` exists. If not, output: "CocoPlus is not initialized. Run `$pod init` first." Then stop.

## Handling `$pull index rebuild`

If the developer invoked `$pull index rebuild`:
1. Run `node .cortex/scripts/session-indexer.js --rebuild`
2. Output: "CocoPull index rebuilt. <N> session records indexed."
3. Stop.

## Handling `$pull search "<query>"`

### Step 1 — Parse Flags

Extract:
- `<query>` — required search string (in quotes)
- `--since <date>` — optional date filter (YYYY-MM-DD)
- `--feature <name>` — optional feature filter (e.g., `cocoharvest`, `safety-gate`)

If no query provided, ask: "What do you want to search for? Example: `$pull search \"schema migration\"`"

### Step 2 — Read Index

Read `.cocoplus/index/sessions.jsonl`. If absent or empty, output:
"No session archive found. Sessions are indexed automatically at session end. If this is a new project, run `$pull index rebuild` after completing some sessions." Then stop.

### Step 3 — Search

Case-insensitive substring match of query against:
- `summary` field
- `features_used` array values
- `archetype` field

Apply `--since` filter (timestamp >= date) and `--feature` filter (features_used contains value) if provided.

Sort results by timestamp descending.

### Step 4 — Output Results

```
CocoPull Search: "<query>"
Found <n> matching sessions

────────────────────────────────────────────────────────────
Session ID    Date        Archetype     Duration   Features
────────────────────────────────────────────────────────────
sess-7e8fa   2026-05-21  deep-build    94 min     cocoharvest, cocoflow, secondeye
sess-6c8d1   2026-05-18  review-cycle  42 min     sentinel, cocowisdom

Excerpt from sess-7e8fa:
  "...decomposed schema migration into 3 parallel CocoHarvest stages, resolved
   NULL handling concern in sentinel Dimension B..."
────────────────────────────────────────────────────────────
```

If no matches: "No sessions match '<query>'. Try a broader search term or `--since` a wider date range."

## Exit Criteria

- Index rebuild calls `session-indexer.js --rebuild` and reports count
- Search matches on summary, features, and archetype
- Filters apply correctly (AND logic between --since and --feature)
- Results show session ID, date, archetype, duration, features, and summary excerpt

Files in this skill

  • pull-search.skill.md3 KB
  • pull.skill.md9.4 KB

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…

Newsletter

Get the weekly list of safe new skills, and the ones we pulled.