Get the FREE Ultimate OpenClaw Setup Guide →

capture-discussion

Scanned
npx machina-cli add skill brennacodes/brenna-plugs/capture-discussion --openclaw
Files (1)
SKILL.md
5.4 KB
<purpose> Capture a verbatim discussion into `~/.things/for-the-record/discussions/`. The content is preserved EXACTLY as provided -- no summarization, rewording, restructuring, or omission. Every word must appear in the output file exactly as given. See `references/discussion-format.md` for the frontmatter schema. </purpose> <critical-constraint> This skill exists specifically because `/add-doc` intelligently structures and summarizes. This skill does the OPPOSITE: it preserves content verbatim. DO NOT summarize, reword, restructure, interpret, or omit ANY content. Every word the user provides (or that is read from a file) MUST appear in the output exactly as given. </critical-constraint> <steps> <step id="load-config" number="1"> <description>Load Configuration</description>
<load-config>
  <action>Resolve the user's home directory.</action>
  <command language="bash" output="home" tool="Bash">echo $HOME</command>
  <constraint>Never pass `~` to the Read tool.</constraint>

  <read path="<home>/.things/config.json" output="config" />
  <if condition="config-missing">Tell the user: "Run `/things:setup-things` first." Then stop.<exit /></if>

  <read path="<home>/.things/for-the-record/preferences.json" output="preferences" />
  <if condition="preferences-missing">Tell the user: "Run `/setup-ftr` first." Then stop.<exit /></if>
</load-config>
</step> <step id="parse-arguments" number="2"> <description>Parse Arguments</description>
<action>Parse `$ARGUMENTS` for:</action>
- **--from-file <path>**: Read content from a file instead of user-provided text
- **--title <title>**: Override the discussion title
- **--tags tag1,tag2**: Explicitly set tags
</step> <step id="gather-content" number="3"> <description>Gather Content</description>
<if condition="--from-file provided">
  <action>Read the file at the specified path. Use its full content as the discussion body.</action>
</if>

<if condition="no --from-file">
  <action>The user should paste or provide the discussion content in this conversation. If they haven't yet, ask:</action>
  <ask-user-question>
    <question>Paste the discussion content you want to capture verbatim.</question>
  </ask-user-question>
</if>

<constraint>Whatever content is gathered -- whether from a file or pasted -- it MUST be written to the output file with ZERO modifications. No fixing typos, no reformatting, no trimming whitespace patterns, no adding section headers.</constraint>
</step> <step id="generate-metadata" number="4"> <description>Generate Metadata</description>
<action>Generate minimal frontmatter:</action>
- `title`: From `--title` flag, or derive a brief descriptive title from the first few lines of content
- `date`: Today's date (YYYY-MM-DD)
- `doc_type`: `"discussion"`
- `tags`: From `--tags` flag, or auto-generate if `preferences.auto_tag` is true (cross-reference `tags.json` and `~/.things/tags/index.json`), or ask user
- `source_type`: `"conversation"` (default) or `"import"` if `--from-file` was used

<action>Generate filename: `<YYYY-MM-DD>-<slugified-title>.md`</action>
</step> <step id="write-discussion" number="5"> <description>Write Discussion File</description>
<write path="<home>/.things/for-the-record/discussions/<filename>">

<template name="discussion">
```markdown
---
title: "<title>"
date: <YYYY-MM-DD>
doc_type: "discussion"
tags: [<tags>]
source_type: "<source_type>"
---

<VERBATIM CONTENT -- every word exactly as provided, no changes>
```
</template>

</write>

<constraint>The body after the frontmatter closing `---` MUST be the exact content provided. Do not add headers, summaries, or any wrapper text around it.</constraint>
</step> <step id="git-workflow" number="6"> <description>Handle Git Workflow</description>
<git-workflow>
  <action>Pull latest before committing.</action>
  <command language="bash" tool="Bash">git -C <home>/.things pull --rebase 2>/dev/null || true</command>

  <action>Read git workflow from `config.json` (`git.workflow`).</action>

  <if condition="workflow-auto">Automatically `git add`, `git commit -m "discussion: <title>"`, and `git push`.</if>
  <if condition="workflow-ask">
    <ask-user-question>
      <question>Commit and push this discussion capture?</question>
      <option>Yes -- commit and push</option>
      <option>Commit only</option>
      <option>No -- I'll handle git myself</option>
    </ask-user-question>
  </if>
  <if condition="workflow-manual">Tell the user the discussion has been saved.</if>
</git-workflow>
</step> <step id="confirm" number="7"> <description>Confirm</description>
<completion-message>
Captured verbatim: **<title>**
Location: `<home>/.things/for-the-record/discussions/<filename>`
Tags: `<tags>`

This discussion is preserved exactly as provided -- no summarization or rewording.
</completion-message>
</step> </steps>

Source

git clone https://github.com/brennacodes/brenna-plugs/blob/main/plugins/for-the-record/skills/capture-discussion/SKILL.mdView on GitHub

Overview

Captures a verbatim discussion into ~/.things/for-the-record/discussions/. The content is preserved exactly as provided—no summarization, rewording, or omission. Each capture is saved as a Markdown file with minimal frontmatter for easy reference.

How This Skill Works

It reads your config and arguments, then collects content from --from-file or direct input. It then writes the verbatim text to a Markdown file under ~/.things/for-the-record/discussions/ with a minimal frontmatter block. The filename is derived from the date and a slugified title.

When to Use It

  • Archiving a team or client discussion for reference and compliance
  • Preserving an interview transcript for later analysis
  • Capturing a meeting where exact wording matters (quotes, commitments)
  • Recording a chat or call log for audit trails
  • Storing verbatim notes from a research session

Quick Start

  1. Step 1: Provide or reference the discussion content (--from-file path or paste text).
  2. Step 2: Optional: add --title and --tags for easier retrieval.
  3. Step 3: Run the capture to write to ~/.things/for-the-record/discussions/<YYYY-MM-DD>-<slugified-title>.md

Best Practices

  • Provide content in one uninterrupted pass to avoid accidental edits
  • Use --from-file for long transcripts to minimize manual paste errors
  • Set a descriptive --title and meaningful --tags for easy search
  • Verify that the output path has write permissions and backup regularly
  • Avoid modifying content after capture; the goal is verbatim preservation

Example Use Cases

  • Engineering standup transcript preserved for onboarding
  • Customer interview captured verbatim for UX research
  • Sales call transcript archived for compliance
  • Legal discussion captured for reference in audits
  • Product planning meeting reviewed with exact quotes

Frequently Asked Questions

Add this skill to your agents
Sponsor this space

Reach thousands of developers