Skip to content
Back to skills

Prompting

ASecurity

Meta-prompting standard library — the LifeOS system for generating, optimizing, and composing prompts programmatically. Three pillars: Standards (Anthropic best practices, context engineering, Fabric patterns); Templates (Handlebars — Briefing, Structure, Gate, Roster, Voice, plus eval templates Judge, Rubric, TestCase, Comparison, Report used by Agents/Evals; the Agents skill keeps its own DynamicAgent.hbs); Tools (RenderTemplate.ts, data-content separation). Philosophy: prompts that write p...

  • 4 stars
  • 0 votes
  • 0 copies
  • 1 view
  • Added September 6, 2026
ai-agentstypescriptgobashtestingsecuritydocumentation

Security analysis

A100/100

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

Scanned September 6, 2026

npx -y skills add ZDStudios/AIOS --skill Prompting --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of Prompting?

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

Security grade badge for Prompting
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/zdstudios-prompting/badge)](https://www.skillsdirectory.com/skills/zdstudios-prompting)

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: Prompting
description: "Meta-prompting standard library — the LifeOS system for generating, optimizing, and composing prompts programmatically. Three pillars: Standards (Anthropic best practices, context engineering, Fabric patterns); Templates (Handlebars — Briefing, Structure, Gate, Roster, Voice, plus eval templates Judge, Rubric, TestCase, Comparison, Report used by Agents/Evals; the Agents skill keeps its own DynamicAgent.hbs); Tools (RenderTemplate.ts, data-content separation). Philosophy: prompts that write prompts — structure is code, content is data. Output is always a prompt to be used elsewhere, not final content. USE WHEN meta-prompting, template generation, prompt optimization, prompt engineering, write a prompt, create system prompt, Handlebars template, eval prompt, judge prompt. NOT FOR generating final content (use the appropriate domain skill)."
effort: medium
---

## Customization

**Before executing, check for user customizations at:**
`~/.claude/LIFEOS/USER/CUSTOMIZATIONS/SKILLS/Prompting/`

If this directory exists, load and apply any PREFERENCES.md, configurations, or resources found there. These override default behavior. If the directory does not exist, proceed with skill defaults.


## 🚨 MANDATORY: Voice Notification (REQUIRED BEFORE ANY ACTION)

**You MUST send this notification BEFORE doing anything else when this skill is invoked.**

1. **Send voice notification**:
   ```bash
   curl -s -X POST http://localhost:31337/notify \
     -H "Content-Type: application/json" \
     -d '{"message": "Running the WORKFLOWNAME workflow in the Prompting skill to ACTION"}' \
     > /dev/null 2>&1 &
   ```

2. **Output text notification**:
   ```
   Running the **WorkflowName** workflow in the **Prompting** skill to ACTION...
   ```

**This is not optional. Execute this curl command immediately upon skill invocation.**

# Prompting - Meta-Prompting & Template System

## What It Does

Generates, optimizes, and composes prompts programmatically. It's the standard library for prompt engineering — other skills call it when they need to build or improve a prompt. The output is always a prompt to be used elsewhere, never the final content itself.

**Invoke when:** meta-prompting, template generation, prompt optimization, programmatic prompt composition, creating dynamic agents, generating structured prompts from data.

## The Problem

Prompt engineering tends to get copy-pasted and rewritten by hand across every skill that needs it, so the same patterns drift apart and best practices live in one person's head. When you want to compose a prompt from data — spin up a custom agent, build an eval judge, generate a phased workflow — there's no clean way to separate the structure from the content. This skill makes structure code and content data: one Handlebars template plus different data renders specialized agents, workflows, and eval frameworks, and the engineering standards live in one place every skill can reference.

## How It Works

Three pillars carry the work:

- **Standards** - Anthropic best practices, Claude 4.x patterns, empirical research (markdown-first design, context engineering, the Fabric pattern system, 1,500+ academic papers on prompt optimization). Full guide in `Standards.md`.
- **Templates** - Handlebars-based system for programmatic prompt generation: Primitives (Briefing, Structure, Gate, Roster, Voice) plus eval templates (Judge, Rubric, TestCase, Comparison, Report). The agent-specific `DynamicAgent.hbs` lives in the Agents skill (`Agents/Templates/DynamicAgent.hbs`), not here.
- **Tools** - Template rendering (`RenderTemplate.ts`), validation, and data-content separation.

## Workflow Routing

Library skill — no `Workflows/` directory. Requests route to the rendering tools and reference docs:

| Trigger | Workflow | File |
|---------|----------|------|
| Render a template / compose a prompt from data / Handlebars template | RenderTemplate (tool) | `Tools/RenderTemplate.ts` |
| Validate a template | ValidateTemplate (tool) | `Tools/ValidateTemplate.ts` |
| Prompt engineering standards / best practices / prompt optimization | Standards (reference) | `Standards.md` |

## Examples

### Example 1: Using Briefing Template (Agent Skill)

```typescript
// skills/Agents/Tools/ComposeAgent.ts
import { renderTemplate } from '${LIFEOS_SKILL_DIR}/Tools/RenderTemplate.ts';

const prompt = renderTemplate('Primitives/Briefing.hbs', {
  briefing: { type: 'research' },
  agent: { id: 'EN-1', name: 'Skeptical Thinker', personality: {...} },
  task: { description: 'Analyze security architecture', questions: [...] },
  output_format: { type: 'markdown' }
});
```

### Example 2: Using Structure Template (Workflow)

```yaml
# Data: phased-analysis.yaml
phases:
  - name: Discovery
    purpose: Identify attack surface
    steps:
      - action: Map entry points
        instructions: List all external interfaces...
  - name: Analysis
    purpose: Assess vulnerabilities
    steps:
      - action: Test boundaries
        instructions: Probe each entry point...
```

```bash
bun run RenderTemplate.ts \
  --template Primitives/Structure.hbs \
  --data phased-analysis.yaml
```

### Example 3: Custom Agent with Voice Mapping

```typescript
// Generate specialized agent with appropriate voice
const agent = composeAgent(['security', 'skeptical', 'thorough'], task, traits);
// Returns: { name, traits, voice: 'default', voiceId: 'VOICE_ID...' }
```

## Integration with Other Skills

### Agents Skill
- Uses `Templates/Primitives/Briefing.hbs` for agent context handoff
- Uses `RenderTemplate.ts` to compose dynamic agents
- Maintains agent-specific template: `Agents/Templates/DynamicAgent.hbs`

### Evals Skill
- Uses eval-specific templates: Judge, Rubric, TestCase, Comparison, Report
- Leverages `RenderTemplate.ts` for eval prompt generation
- Eval templates may be stored in `Evals/Templates/` but use Prompting's engine

### Development Skill
- References `Standards.md` for prompt best practices
- Uses `Structure.hbs` for workflow patterns
- Applies `Gate.hbs` for validation checklists

## Token Efficiency

The templating system eliminated **~35,000 tokens (65% reduction)** across LifeOS:

| Area | Before | After | Savings |
|------|--------|-------|---------|
| SKILL.md Frontmatter | 20,750 | 8,300 | 60% |
| Agent Briefings | 6,400 | 1,900 | 70% |
| Voice Notifications | 6,225 | 725 | 88% |
| Workflow Steps | 7,500 | 3,000 | 60% |
| **TOTAL** | ~53,000 | ~18,000 | **65%** |

## Best Practices

### 1. Separation of Concerns
- **Templates**: Structure and formatting only
- **Data**: Content and parameters (YAML/JSON)
- **Logic**: Rendering and validation (TypeScript)

### 2. DRY Principle
- Extract repeated patterns into partials
- Use presets for common configurations
- Single source of truth for definitions

### 3. Version Control
- Templates and data in separate files
- Track changes independently
- Enable A/B testing of structures

## References

**Primary Documentation:**
- `Standards.md` - Complete prompt engineering guide
- `Templates/README.md` - Template system overview
- `Tools/RenderTemplate.ts` - Implementation details

**Research Foundation:**
- Anthropic: "Claude 4.x Best Practices" (November 2025)
- Anthropic: "Effective Context Engineering for AI Agents"
- Anthropic: "Prompt Templates and Variables"
- The Fabric System (January 2024)
- "The Prompt Report" - arXiv:2406.06608
- "The Prompt Canvas" - arXiv:2412.05127

**Related Skills:**
- Agents - Dynamic agent composition
- Evals - LLM-as-Judge prompting
- Development - Spec-driven development patterns

---

**Philosophy:** Prompts that write prompts. Structure is code, content is data. Meta-prompting enables dynamic composition where the same template with different data generates specialized agents, workflows, and evaluation frameworks. This is core LifeOS DNA - programmatic prompt generation at scale.

## Gotchas

- **Meta-prompting generates PROMPTS, not content.** The output is a prompt that gets used elsewhere — not the final deliverable.
- **Templates should be model-agnostic.** Don't write prompts that depend on specific model quirks.
- **Test generated prompts before declaring them ready.** A prompt that looks good may perform poorly.

## Execution Log

After completing any workflow, append a single JSONL entry:

```bash
echo '{"ts":"'$(date -u +%Y-%m-%dT%H:%M:%SZ)'","skill":"Prompting","workflow":"WORKFLOW_USED","input":"8_WORD_SUMMARY","status":"ok|error","duration_s":SECONDS}' >> ~/.claude/LIFEOS/MEMORY/SKILLS/execution.jsonl
```

Replace `WORKFLOW_USED` with the workflow executed, `8_WORD_SUMMARY` with a brief input description, and `SECONDS` with approximate wall-clock time. Log `status: "error"` if the workflow failed.

Files in this skill

  • SKILL.md8.6 KB
  • Standards.md39.3 KB
  • Templates/Data/Agents.yaml11 KB
  • Templates/Data/ValidationGates.yaml7.7 KB
  • Templates/Data/VoicePresets.yaml4 KB
  • Templates/Evals/Comparison.hbs3.7 KB
  • Templates/Evals/Judge.hbs3.5 KB
  • Templates/Evals/Report.hbs4.4 KB
  • Templates/Evals/Rubric.hbs2.9 KB
  • Templates/Evals/TestCase.hbs2.6 KB
  • Templates/Primitives/Briefing.hbs2.4 KB
  • Templates/Primitives/Gate.hbs1.9 KB
  • Templates/Primitives/Roster.hbs1.9 KB
  • Templates/Primitives/Structure.hbs1.4 KB
  • Templates/Primitives/Voice.hbs1.6 KB
  • Templates/README.md8.6 KB
  • Templates/Tools/.gitignore388 B
  • Templates/Tools/CLAUDE.md2.5 KB
  • Templates/Tools/README.md220 B
  • Templates/Tools/RenderTemplate.ts9.2 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.