How Hephaestus Code
was made
Built from leaked Claude prompts, two custom skills, and a character-limit workaround. Then used to build its own website.
The idea
What if you could get Claude Code’s engineering discipline — Plan Mode, structured implementation, GitHub-native workflows — inside Perplexity, with its live web search and GitHub MCP connector? No API key. No local tool. Just a Perplexity Education Pro subscription and a Spaces account.
How it was built
Get the raw material
Sourced Claude’s actual system prompts from a public GitHub repo of leaked Anthropic prompts. This gave a ground truth for how Opus 4.6 is instructed to reason: intellectual curiosity, honesty over validation, calibrated confidence.
asgeirtj/system_prompts_leaksBuild the skills
Two custom Markdown “skills” were written for Perplexity Spaces beforehand: a Plan Mode skill — a 5-phase engineering workflow (Explore → Clarify → Plan → Approve → Implement) with task tracking and hard approval gates — and a GitHub MCP skill defining rules for batching tool calls, paginating APIs, and outputting structured Progress Reports.
Synthesize it all
All five Anthropic prompt files plus both skills were fed into a single Perplexity conversation with this prompt: “Make a HUGE system prompt that uses all features and characteristics of Opus, with the Plan Mode skill included, using Claude Code’s way of doing things for programming. Use Perplexity’s connectors, such as GitHub MCP.” The result: a ~34,000 character master system prompt across 13 structured sections.
Deploy with a workaround
Perplexity Spaces has a character limit on the system prompt field — the 34k character prompt won’t fit. Solution: upload the full prompt as SYSTEM_PROMPT.md to the Space’s files, then put only a tiny instruction in the box that tells the AI to read that file on every conversation.
The system prompt box
Perplexity Spaces limits the system prompt field to a few thousand characters. The full prompt is ~34,000. The workaround: put only this tiny instruction in the box, and let the AI do the rest.
You are "Hephaestus Code", a Claude-Code inspired Perplexity Assistant who is specialized for coding. SYSTEM_PROMPT.md is your new system prompt. Make sure to fully read it. You must be clear about what underlying model is powering your responses - whether that be Sonar, Gemini, GPT, Claude Sonnet, Claude Opus, Grok, or Kimi.
SYSTEM_PROMPT.md is uploaded to the Space’s files. On every conversation, the AI reads it in full before responding.
Then it built its own website
The website you’re reading right now was built entirely by Hephaestus Code — using its own GitHub MCP tools, Plan Mode workflow, and iterative commits — in the same Perplexity conversation that triggered this rebrand. Here’s how that conversation went.
“Enter Plan Mode — We’re gonna change the ghostp1lot/perplexity-code repo to be a simple website hosted on Vercel, matching ghostp1lot.com’s design”
Explored 8 source files from ghostp1lot/website (page.tsx, layout.tsx, globals.css, Header.tsx, Footer.tsx, package.json, tailwind.config.ts, components/) to understand the full design system before writing a single line. Produced a 13-file architecture plan.
“I messed up — the repository I was referring to was alexey-max-fedorov/perplexity-code”
Plan revised in-place. Discovered the existing repo had only two files: README.md and SYSTEM_PROMPT.md. Scoped plan to adding the entire Next.js site without touching existing content.
“Proceed with the plan.”
Pushed 13 files across 5 commits: config files, app layout, globals.css, Header, Footer, the hero-only homepage, and the /get-started instructions page sourced directly from README.md.
“Change ‘View SYSTEM_PROMPT.md on GitHub’ to ‘Download SYSTEM_PROMPT.md’ and clicking that should directly download the file”
Created a Next.js Route Handler at /api/download-prompt that proxies the raw file from GitHub with Content-Disposition: attachment — triggering a real browser download instead of opening the file inline.
“We are fully rebranding to ‘Hephaestus Code’. Orange color scheme. Badge: green, ‘Released Today’.”
Updated 6 files in one commit: #3C82FF → #F97316 across all components, glow rgba values in globals.css, badge to #4ADE80 green, every instance of the product name including the system prompt code block.
“The gradient text looks weird — orange but with a splash of teal”
Replaced via-[#4EE0B5] with via-[#FBBF24] (amber) on both gradient headlines — orange → amber → orange, a natural fire palette fitting the Hephaestus theme.
“Make a page about how I created Hephaestus Code — include this conversation where I used it to build its own website”
This page.
“Change the System Instructions to add: ‘You must be clear about what underlying model is powering your responses — whether that be Sonar, Gemini, GPT, Claude Sonnet, Claude Opus, Grok, or Kimi’”
Updated the system prompt snippet on /get-started with the model transparency requirement. The assistant now always declares which underlying AI model (Sonar, Claude, GPT, Gemini, Grok, or Kimi) is answering — keeping users informed rather than letting the model stay opaque.