Back
The Story

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

1

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_leaks
2

Build 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.

3

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.

4

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.

system prompt field

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.

User

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

HC

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.

User

I messed up — the repository I was referring to was alexey-max-fedorov/perplexity-code

HC

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.

User

Proceed with the plan.

HC

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.

User

Change ‘View SYSTEM_PROMPT.md on GitHub’ to ‘Download SYSTEM_PROMPT.md’ and clicking that should directly download the file

HC

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.

User

We are fully rebranding to ‘Hephaestus Code’. Orange color scheme. Badge: green, ‘Released Today’.

HC

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.

User

The gradient text looks weird — orange but with a splash of teal

HC

Replaced via-[#4EE0B5] with via-[#FBBF24] (amber) on both gradient headlines — orange → amber → orange, a natural fire palette fitting the Hephaestus theme.

User

Make a page about how I created Hephaestus Code — include this conversation where I used it to build its own website

HC

This page.

User

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’

HC

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.