Skip to content

Instantly share code, notes, and snippets.

View tomfuertes's full-sized avatar

Tom Fuertes tomfuertes

View GitHub Profile
@tomfuertes
tomfuertes / _README.md
Last active March 8, 2026 17:13
Claude Code /convos skill - extract session history into queryable markdown files

/convos - Claude Code Conversation Extractor

Extract Claude Code session history into readable, queryable markdown files.

What it does

Reads ~/.claude/projects/<project>/*.jsonl session files and produces structured markdown in convos/ with:

  • Your prompts (full text)
  • Assistant responses (text only, tool calls compressed to one-liners)
  • Insight blocks collected into a summary section
@tomfuertes
tomfuertes / convos.md
Created March 7, 2026 16:40
Claude Code /convos command - extract conversation history into queryable markdown
name description args
convos
Extract past Claude Code conversations into readable markdown files in convos/. Highlights user prompts and assistant insights. Use for interview prep, project history, and knowledge mining.
name description required
args
[project-path] [--since=YYYY-MM-DD] [--session=UUID] [--reindex]
false

Convos - Conversation Extractor

@tomfuertes
tomfuertes / README.md
Created February 25, 2026 16:53
Claude Code .claude/skills examples - UAT testing an AI agent API (Ghostfolio)

.claude/skills examples - Ghostfolio AI Agent

Project-local Claude Code skills for UAT testing an AI agent endpoint built on top of Ghostfolio.

What are Claude Code skills?

Skills (.claude/skills/<name>/SKILL.md) are slash commands that expand into prompt instructions when you type /<name> in Claude Code. They can:

  • Run bash commands with \! prefix in the frontmatter to inject live context
  • Gate tool usage via allowed-tools
  • Skip a model round-trip with disable-model-invocation: true (inline expansion only)
@tomfuertes
tomfuertes / CLAUDE.md
Created February 23, 2026 21:22
Claude Code user preferences CLAUDE.md

User Preferences

Communication

  • Ruthlessly concise. No intros, filler, or em dashes (use hyphens).
  • Just do it (if reversible). For one-way doors: up to 4 parallel questions, 4 thoughtful options, structured as orthogonal dimensions. Never yes/no.

Environment

  • Shell aliases: rm is aliased to safe trash deletion. Always use rm to delete files, NEVER call trash directly (two different binaries exist and the wrong one gets invoked). cat = bat --plain (use command cat for real cat flags, bat -A for non-printable chars).
  • Dev servers: Use TaskStop (not killport) for tasks spawned this session. killport is only for orphaned ports from previous sessions.
  • Container ports: In devcontainers, $FORWARDED_PORTS (comma-separated) lists which ports are published to the host. Check this before telling users to visit localhost: - if the port isn't in the list, it's not reachable from the host.
@tomfuertes
tomfuertes / polyglot-observability.md
Created February 23, 2026 15:07
Observability for Polyglot (Sofia AI Tutor) - Prompt Tuning Focus

Observability for Polyglot (Sofia AI Tutor) - Prompt Tuning Focus

What's already there

The backend has solid cost and operational observability:

  • message_logs table - tokens in/out, model, cost, timestamp per call
  • daily_costs table - aggregated spend with kill switch at $100/day
  • logger.geminiCall() - logs slow requests (>1s) to console
  • Sentry - error monitoring with 20% perf sample rate
@tomfuertes
tomfuertes / CLAUDE-ceo-mode.md
Created February 22, 2026 15:08
Claude Code Hooks - Battle-tested hooks for security, team orchestration, and knowledge management

CEO Mode - CLAUDE.md Excerpt

Add this to your project or user-level CLAUDE.md to teach Claude the coordinator-worker pattern. Activate by saying "CEO mode", "delegate", "swarm", or "team".


CEO Mode

Activated by: "CEO mode", "delegate", "swarm", "team". Requires TeamCreate + TaskList. No exceptions.

@tomfuertes
tomfuertes / DaftClaude.md
Last active February 11, 2026 21:04
Daft Punk notification hook for Claude Code

Daft Punk Notification Hook for Claude Code

Every time Claude Code sends a notification (task complete, waiting for input, etc.), it plays a random clip from Daft Punk's "Harder Better Faster Stronger."

work it / make it / do it / makes us / harder / better / faster / stronger / more than / hour / our / never / ever / after / work is / over

Setup

Add the hook from settings-snippet.json into your ~/.claude/settings.json under hooks.Notification.

window.dfc

window.dfc is a function that allows you to pass a string and returns an int. This string is persisted via localStorage and available to send to reporting solutions like google optimize server side.

Installation

  1. Paste the inline js function into template.liquid as close to the <head> as possible
  2. Paste the ga additional code into shopify admin -> online store -> prefs -> Google Analytics for tracking experiments
<!DOCTYPE html>
<html>
<head>
<script>
window.start = new Date();
function log(str){
return ()=>{
console.log(str, document.readyState, new Date() - start);
if (document.readyState === 'interactive') {
console.log(document.getElementById('foo').style);
@tomfuertes
tomfuertes / CROmetrics.md
Last active July 18, 2017 16:03 — forked from twalk4821/CROmetrics.apply
Application for CROmetrics remote work

CROmetrics Engineering Application

Thanks for your interest in working with us! To apply:

  • Create a "new gist" (link in github header once you're logged in) with the Raw Text of this .md file (do not fork this gist)
  • Answer the following questions in the spaces provided
  • Send an email to tom@crometrics.com and chris@crometrics.com that includes:
    • A paragraph that tells us a little about yourself and why you are interested in this job
    • A link to your Gist
    • Your desired hourly rate and general availability