Skip to content

Instantly share code, notes, and snippets.

View seedprod's full-sized avatar

John Turner seedprod

View GitHub Profile
@seedprod
seedprod / .env.example
Created March 4, 2026 00:26
Telegram + Claude Code - Chat with your AI agent from your phone
# Required
TELEGRAM_BOT_TOKEN= # From @BotFather
ALLOWED_USERS= # Comma-separated Telegram user IDs
# Optional
WORK_DIR= # Where Claude CLI executes (default: ~)
AGENT_CMD=claude # CLI command (claude, codex, amp, opencode)
AGENT_MODEL= # Model override (--model flag)
@seedprod
seedprod / SKILL.md
Last active March 4, 2026 00:02
Spec Interview - Claude Code skill for turning rough ideas into comprehensive technical specifications through deep interviewing
name description
spec-interview
Conduct deep technical interviews to create comprehensive specifications. Use when the user has a feature idea (sentence, paragraph, or reference link) and wants to flesh it out into a complete SPEC.md. Triggers on "spec interview", "interview me about", "help me spec out", "create a spec for", or when user provides a rough idea and wants thorough requirements gathering. This skill asks non-obvious, in-depth questions and continues until the specification is complete.

Spec Interview

Transform rough ideas into comprehensive technical specifications through deep, iterative interviewing.

When to Use

---
name: video-publish-workflow
description: Complete YouTube video publishing workflow that chains thumbnail generation, upload, transcript extraction, and content repurposing. Use when user says "publish video", "full video workflow", "upload and repurpose", or provides a video file with title for end-to-end YouTube publishing with content distribution.
---
# Video Publish Workflow
Orchestrate the complete video publishing pipeline by chaining existing skills.
## Required Inputs
// get total entries count
$contestant_id = 1;
$tablename = $wpdb->prefix . 'rafflepress_entries';
$sql = "SELECT count(id) FROM $tablename WHERE contestant_id = %d AND deleted_at IS NULL";
$safe_sql = $wpdb->prepare( $sql, $contestant['id'] );
$total_entries = $wpdb->get_var( $safe_sql );
$contestant['total_entries'] = $total_entries;
<?php
update_option( 'seedprod_token', wp_generate_uuid4() );
{
"show_header_template":true,
"show_footer_template":true,
"no_conflict_mode":false,
"no_index":false,
"seo_title":"",
"seo_description":"",
"favicon":"",
"social_thumbnail":"",
"enable_recaptcha":false,
<a id='COCBadgeURL' href='https://www.chamberofcommerce.com/united-states/colorado/denver/massage-therapist/2013293472-gentle-myofascial-release?source=memberwebsite' target='_tab' rel='noopener'><img style='width:auto;height:150px;' id='COCBadgeIMG' src='https://coc.codes/images/badge/2013293472'></a>
@seedprod
seedprod / remove_inline_css_and_style_tag.php
Last active July 22, 2021 01:56
This will remove inline css and style tag and will allows you to move to dedicated style sheet or head.
<?php
// https://simplehtmldom.sourceforge.io/
include_once('simple_html_dom.php');
function semi_it( $string ) {
return rtrim( $string, ';' ) . ';';
}
function generate_random_string($length = 10) {
$characters = '0123456789abcdefghijklmnopqrstuvwxyz';
<script>
function set_fta(){
var t = Math.round((new Date()).getTime() / 1e3);
var p = '';
var b = document.body;
if (this.fta_h_c(b,'single-post')) {
p = 'b--'
}
var n = location.pathname;
<?php
// we have a product upload record in our db. That upload record has things like:
//slug, zipfile, current_verison, wordpress_version_required, test_to, upgrade_notice etc
// when a update request comes in we run our checks.
// for example if we are checking for a legacy version
$is_legacy = false;
$latest_legacy_version = '5.12.8';