🎯

scratch-pad

🎯Skill

from krafton-ai/kira

VibeIndex|
What it does

scratch-pad skill from krafton-ai/kira

scratch-pad

Installation

Install skill:
npx skills add https://github.com/krafton-ai/kira --skill scratch-pad
2
AddedJan 29, 2026

Skill Details

SKILL.md

|

Overview

# Scratch Pad - Markdown-Based Task Memory

Simple markdown file for tracking progress during complex tasks. All content is directly written to a .md file for immediate use.

Quick Start

```bash

# Initialize scratch pad

python scripts/scratch_pad.py init "Task Name"

# Add content

python scripts/scratch_pad.py append "Finding: The analysis shows..."

# Log tool calls

python scripts/scratch_pad.py log-tool "web_search" '{"query": "AI trends"}' "Found 10 results"

# Read current content

python scripts/scratch_pad.py read

```

Core Commands

Basic Operations

```bash

# Start new task

python scripts/scratch_pad.py --file /path/to/scratch.md init "Task Name"

# Add any content

python scripts/scratch_pad.py append "Content to add..."

# Add section header

python scripts/scratch_pad.py section "Research Findings"

# Read entire pad

python scripts/scratch_pad.py read

```

Structured Logging

```bash

# Log tool execution

python scripts/scratch_pad.py log-tool "tool_name" '{"param": "value"}' "result text"

# Add finding

python scripts/scratch_pad.py finding "Important discovery" --category "Analysis"

# Add checkpoint

python scripts/scratch_pad.py checkpoint "Phase 1 Complete"

# Add TODO

python scripts/scratch_pad.py todo "Follow up on this"

python scripts/scratch_pad.py todo "Completed task" --done

# Mark complete

python scripts/scratch_pad.py complete

```

When to Use

ALWAYS use for:

  • Tasks with 5+ tool calls
  • Multi-source research ("μ‘°μ‚¬ν•΄μ€˜")
  • Comparative analysis ("λΉ„κ΅ν•΄μ€˜")
  • Information synthesis ("μ •λ¦¬ν•΄μ€˜")
  • Step-by-step processing

Integration Pattern

```bash

# 1. Initialize at task start

SCRATCH_FILE="FILESYSTEM_BASE_DIR/files/{channel_id}/tmp/scratch_{timestamp}.md"

python scripts/scratch_pad.py --file $SCRATCH_FILE init "User request summary"

# 2. Log each tool call

python scripts/scratch_pad.py --file $SCRATCH_FILE log-tool "mcp__perplexity__search" '{"query": "..."}'

# Execute tool...

python scripts/scratch_pad.py --file $SCRATCH_FILE append "Result: Found X relevant items"

# 3. Add findings

python scripts/scratch_pad.py --file $SCRATCH_FILE finding "Key insight from research"

# 4. Read content for reference (DO NOT include raw content in response)

CONTENT=$(python scripts/scratch_pad.py --file $SCRATCH_FILE read)

# Use $CONTENT as reference to write organized response in mcp__slack__answer

# 5. Clean up (REQUIRED)

rm $SCRATCH_FILE

```

Important:

  • The scratch pad is for YOUR reference only
  • DO NOT copy/paste the raw markdown into responses
  • USE it to organize and write a proper answer
  • ALWAYS delete the scratch file after use

Output Format

The markdown file is structured for easy reading:

```markdown

# πŸ“‹ Task Name

Created: 2025-11-05 10:00:00

Status: πŸ”„ In Progress

---

πŸ“ Task Overview

Task: Research competitor products

Started: 2025-11-05 10:00:00

---

Research Findings (10:05:23)

[10:05:30] Found 3 main competitors...

πŸ”§ [10:06:15] Tool: web_search

Parameters:

```json

{

"query": "competitor analysis"

}

```

Result:

```

Found 10 relevant results

```

---

βœ… Checkpoint: Initial Research Complete

Time: 10:15:00

Gathered basic information on all competitors

---

```

Best Practices

  1. Use descriptive section headers - Makes content easy to navigate
  2. Log tools immediately - Capture parameters before execution
  3. Add findings as you go - Don't wait until the end
  4. Use checkpoints - Mark major milestones
  5. Reference, don't copy - Use scratch pad as reference for organized response
  6. Always clean up - Delete scratch files after task completion
  7. Keep it concise - Focus on key information for YOUR reference

Module Usage

```python

from scripts.scratch_pad import ScratchPadManager

# Initialize

manager = ScratchPadManager('/tmp/task.md')

manager.init("Complex Analysis Task")

# Add content

manager.add_section("Research Phase")

manager.append("Starting research on topic X...")

# Log tool

manager.log_tool("web_search", {"query": "topic X"}, "10 results found")

# Add finding

manager.add_finding("Topic X is growing 50% annually", "Market Trends")

# Read content

content = manager.read()

# Mark complete

manager.complete()

```

File Management

  • Location: Always in FILESYSTEM_BASE_DIR/files/{channel_id}/tmp/
  • Naming: scratch_{timestamp}.md or scratch_{task_id}.md
  • Cleanup: Delete after task completion
  • Size limit: Keep under 1MB for performance

Why Markdown?

  • βœ… Human-readable format
  • βœ… No JSON parsing overhead
  • βœ… Direct append operations
  • βœ… Easy to include in responses
  • βœ… Can be viewed/edited manually
  • βœ… Natural structure for documentation