Skip to content
Back to skills

Frames

ASecurity

Synthesize a set of signal cards into frames — named narrative groupings such as drivers of change, tensions, or emerging themes — each with a title, summary, body and the signals it binds, many-to-many. Use when the user asks "what are the themes", "drivers of change", "cluster these signals", "what's the story here", "frames", or needs the layer between raw signals and a report. Stage: structure.

  • 2 stars
  • 0 votes
  • 0 copies
  • 2 views
  • Added September 23, 2026
ai-agentsgo

Security analysis

A100/100

Scanned September 23, 2026

npx -y skills add envisioning/skills --skill frames --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of Frames?

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

Security grade badge for Frames
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/envisioning-frames/badge)](https://www.skillsdirectory.com/skills/envisioning-frames)

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: frames
description: Synthesize a set of signal cards into frames — named narrative groupings such as drivers of change, tensions, or emerging themes — each with a title, summary, body and the signals it binds, many-to-many. Use when the user asks "what are the themes", "drivers of change", "cluster these signals", "what's the story here", "frames", or needs the layer between raw signals and a report. Stage: structure.
---

# frames

A frame is a narrative that several signals belong to. Frames are how a
scan becomes readable without losing the cards underneath: every claim in
a frame points back to the signals that support it.

Read first: `../../core/signal-schema.md`, `../../core/envisioning.md`,
`../../core/voice.md`.

## Input

Active signal cards (a scan index, folder, or list; frozen `merged_into`
cards are skipped), and a **frame kind**. Default kinds:

| kind | a frame is… | good count |
| --- | --- | --- |
| `drivers` | a force pushing the scope in one direction | 4–7 |
| `tensions` | two forces pulling against each other | 3–5 |
| `themes` | a pattern several signals share | 5–8 |
| `bets` | a claim the corpus supports that a strategist could act on | 3–5 |

The user can name another kind; write its definition into the output.

## Procedure

1. **Read every card.** Frames come from the *What* and *So what*
   sections, not the titles.
2. **Propose frames.** Each needs at least two signals; a one-signal frame
   is that signal restated. A signal may sit in several frames — that is
   the point of many-to-many, and a signal in three frames is usually the
   most important one in the corpus.
3. **Write each frame:**
   - `title` — 3–6 words, a claim not a topic ("Regulators move before
     standards bodies", not "Regulation").
   - `summary` — two sentences, present tense.
   - `content` — 150–250 words: the mechanism, the actors, the evidence,
     with each signal cited inline by slug the first time it is used.
   - `signals[]` — the bound cards.
4. **Check coverage.** List signals bound to no frame. Either they are
   noise (say so) or a frame is missing (add it). Don't force them in.
5. **Append, don't replace.** If a frame set already exists for this
   scope, new frames are added alongside; existing ones are edited only
   when the user asks. Provenance is the version history.
6. **Persist** to `/foresight/frames/<scope>-<kind>` (`category:
   research`), or `./foresight/frames/`. `message`: `frames · <kind> · <n> frames`.

## Output

```markdown
---
kind: frames
frame_kind: <drivers|tensions|themes|bets|custom>
title: <scope> · <frame kind>
scope:
sources: [<scan index or cards>]
signals_total: <n>
signals_unbound: [<slugs>]
---
## <frame title>
<summary>

<content>

**Signals:** slug · slug · slug
```

## Refusals

- Fewer than 6 active cards → say a frame set won't be meaningful; offer
  to run a scan or `signal` first.
- No forecasts inside frames. A frame describes what the signals show
  now; `scenarios` is where futures live.

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.