chat2kb

v0.0.4

Convert chat conversations into structured Markdown knowledge-base files. Use when the user wants to save, capture, export, or document a conversation, inclu...

0· 127·0 current·0 all-time

Install

OpenClaw Prompt Flow

Install with OpenClaw

Best for remote or guided setup. Copy the exact prompt, then paste it into OpenClaw for extraterrest/chat2kb.

Previewing Install & Setup.
Prompt PreviewInstall & Setup
Install the skill "chat2kb" (extraterrest/chat2kb) from ClawHub.
Skill page: https://clawhub.ai/extraterrest/chat2kb
Keep the work scoped to this skill only.
After install, inspect the skill metadata and help me finish setup.
Required env vars: CHAT2KB_FOLDER, CHAT2KB_DRY_RUN, CHAT2KB_LOG_LEVEL
Required binaries: date, openssl
Use only the metadata you can verify from ClawHub; do not invent missing requirements.
Ask before making any broader environment changes.

Command Line

CLI Commands

Use the direct CLI path if you want to install manually and keep every step visible.

OpenClaw CLI

Bare skill slug

openclaw skills install chat2kb

ClawHub CLI

Package manager switcher

npx clawhub@latest install chat2kb
Security Scan
VirusTotalVirusTotal
Pending
View report →
OpenClawOpenClaw
Benign
high confidence
Purpose & Capability
Name/description match what the skill asks for: it needs a target folder, dry-run and log-level flags, and two small binaries (date and openssl). date is used for timestamps and openssl is used to generate a short hex ID — both are reasonable for the stated export/ID-generation functionality.
Instruction Scope
SKILL.md confines actions to reading the conversation, optionally reading ~/.chat2kb/config.yml and the declared environment variables, generating Markdown, previewing with the user, and writing files to a user-specified folder. There are no instructions to collect unrelated files, call external endpoints, or exfiltrate data.
Install Mechanism
Instruction-only skill with no install spec and no code files; nothing is written to disk by an installer. This is low-risk and appropriate for a prose-only exporter.
Credentials
Required environment variables (CHAT2KB_FOLDER, CHAT2KB_DRY_RUN, CHAT2KB_LOG_LEVEL) and the declared config path (~/.chat2kb/config.yml) are consistent with the skill's behavior (resolving save path, dry-run behavior, logging). No unrelated credentials or secrets are requested.
Persistence & Privilege
Skill is not always-enabled and does not request elevated privileges or modify other skills. It does write user-visible KB files (expected for its purpose); users should note it will create directories and backups per the config.
Assessment
This appears coherent and matches its description. Before enabling or running it: 1) set CHAT2KB_FOLDER to a directory you intend the agent to write to (or rely on ~/.chat2kb/config.yml) so files land in the right place; 2) keep CHAT2KB_DRY_RUN=true while you test so it only previews output; 3) review the preview each time before confirming save (the skill explicitly shows a preview step); and 4) inspect ~/.chat2kb/config.yml (if present) to ensure it contains only expected settings. There are no hidden network calls or secret-requesting env vars, so the main risk is accidental writing of export files to an unintended location — guard the folder and config file accordingly.

Like a lobster shell, security has layers — review code before you run it.

Runtime requirements

Binsdate, openssl
EnvCHAT2KB_FOLDER, CHAT2KB_DRY_RUN, CHAT2KB_LOG_LEVEL
latestvk9725j68f7x74f4797wwzpd6x584wp8k
127downloads
0stars
4versions
Updated 1w ago
v0.0.4
MIT-0

Chat2KB for OpenClaw

Convert chat history into clean, structured Markdown knowledge-base files.

When To Use

Use this skill when the user wants to:

  • save the current conversation as notes or KB
  • export part or all of a discussion into Markdown
  • turn a design/debug/brainstorming thread into reusable documentation
  • update a previously saved KB entry with new discussion content

If the request is ambiguous, ask one short clarification question instead of skipping the export flow.

OpenClaw Workflow

Step 1: Detect topics

Read the relevant conversation scope and identify distinct topics.

  • If the user specified a time range or topic, honor that first
  • If only one topic is present, continue directly
  • If multiple topics are present, present a numbered list
  • Support all to save each topic separately
  • Support combine to merge selected topics into one KB file

Use this format when multiple topics are found:

Detected 3 topics:

1. [Title]
   [One-sentence summary]

2. [Title]
   [One-sentence summary]

3. [Title]
   [One-sentence summary]

Which topics would you like to save?
-> Enter numbers, e.g. 1,3
-> Enter all
-> Enter combine

Step 2: Check for previous export

Before generating a new file, scan the conversation for a previous conversation_id for the same topic.

  • If no previous export exists, generate a new ID
  • If a previous export exists, ask whether to update, append, or create a new KB

Conversation ID format:

kb_{YYYYMMDD}_{HHMMSS}_{6hex}
Example: kb_20260410_143052_a7c9e2

Generation:

CONVERSATION_ID="kb_$(date +%Y%m%d_%H%M%S)_$(openssl rand -hex 3)"

Use this prompt when a previous export exists:

Found a previous KB for this topic (ID: kb_20260410_143052_a7c9e2)

-> A: Update (regenerate the full KB with all content)
-> B: Append (export only content added since last save)
-> C: New (ignore previous KB, create an independent one)

Step 3: Extract content

For each selected topic, extract:

  • summary: 1-2 paragraph overview
  • key_points: grouped by theme, not chronology
  • code_examples: only if code was discussed
  • action_items: completed and pending items

Extraction rules:

  • preserve technical accuracy over elegance
  • group related ideas by theme
  • prefer decisions, tradeoffs, and takeaways over transcript-like detail
  • include code only when it helps future reuse
  • omit empty sections instead of leaving placeholders

Step 4: Generate Markdown

Use this structure:

---
conversation_id: kb_20260410_143052_a7c9e2
created_at: YYYY-MM-DDTHH:MM:SSZ
updated_at: YYYY-MM-DDTHH:MM:SSZ
export_type: full
topics: [tag1, tag2]
language: en
participants: [User, Assistant]
platform: openclaw
word_count: 342
---

# [Topic Title]

**Date**: YYYY-MM-DD

## Summary

[1-2 paragraphs]

## Key Points

### [Theme 1]
- insight
- detail

### [Theme 2]
- insight

## Code Examples

```language
// code

Action Items

  • Done item
  • Pending item

Rules:

- group by theme, not chronology
- use bullet points in `Key Points`
- omit `Code Examples` if no code was discussed
- omit `Action Items` if none exist
- do not include a full transcript
- set `word_count` to the total number of words in the body (excluding frontmatter)

### Step 5: Preview before writing

Always show the generated Markdown before writing the file.

Use this preview structure:

Preview (not saved yet)

[full Markdown content]

Will save to: /path/to/YYYY-MM-DD-topic-slug.md

-> Y Save -> E Edit summary -> N Cancel


If the user chooses `E`, accept the revised summary, regenerate the preview, and ask again.

### Step 6: Resolve save path and write

Resolve the save path in this order:

1. `~/.chat2kb/config.yml`
2. `CHAT2KB_FOLDER`
3. ask the user

Config file example:

```yaml
kb_folder: ~/Documents/KnowledgeBase
dry_run: false
create_backup: true
log_level: info

Environment overrides:

VariablePurpose
CHAT2KB_FOLDERKB save location
CHAT2KB_DRY_RUNtrue = preview only
CHAT2KB_LOG_LEVELLogging verbosity

Write behavior:

  • create the directory if needed
  • use filename YYYY-MM-DD-<topic-slug>.md
  • for incremental export use YYYY-MM-DD-<topic-slug>-part{N}.md
  • if config dry_run: true or CHAT2KB_DRY_RUN=true, do not write the file; clearly report preview-only mode
  • if overwriting and create_backup: true, create a backup first

Slug rules

The <topic-slug> in the filename must follow these rules:

  • lowercase alphanumeric and hyphens only
  • no leading or trailing hyphens
  • maximum 50 characters
  • derived from the conversation topic

Examples:

  • 2026-04-10-react-performance-optimization.md
  • 2026-04-10-react-performance-optimization-and-other-things.md ❌ too long
  • 2026-04-10--react.md ❌ double hyphen

Step 7: Confirm success

After writing, report:

  • saved file path
  • filename
  • conversation_id

Use this format:

Knowledge base saved!

Location: /absolute/path/to/2026-04-10-react-optimization.md
ID: kb_20260410_143052_a7c9e2

If running in dry-run mode, say so explicitly:

Dry run complete — preview generated, no file written.

Error Handling

Cannot write to folder

Cannot write to folder: /path/to/folder
Reason: directory does not exist or no write permission

Suggested fixes:

  • create the directory
  • check write permissions
  • ask the user for an alternate save location

No content found

No content to export.
Reason: no messages found in the selected time range.

Suggested fixes:

  • export the full conversation
  • widen the requested time range

File conflict

File already exists: 2026-04-10-react-optimization.md
-> A: Overwrite
-> B: Rename
-> C: Cancel

Comments

Loading comments...