@davidtphung / City · GitHub ↗
davidtphung 's city
Sign in to send kudos and follow peopleCaldera members can cheer each other on.
Sign in with GitHubOther waysGet your own page
Sign in with GitHubOther waysGet your own page
Every project is a district and every repo a building: taller means more commits this year, lit windows mean commits this week, a crane means it's being built right now. The houses around each district are the Obsidian notes about that project.
65buildings
62commits this year
0busy this week
0notes in town
Drag to move · scroll or pinch to zoom · tap a building
TypeScriptJavaScriptPythonHTMLSwiftOther🏗 built this week🏠 notes about the project
| District | Buildings | Commits this year | This week | Notes |
|---|---|---|---|---|
| TypeScript | 29 | 29 | 0 | 0 |
| HTML | 17 | 17 | 0 | 0 |
| Other | 15 | 12 | 0 | 0 |
| JavaScript | 2 | 2 | 0 | 0 |
| Python | 1 | 1 | 0 | 0 |
| Jupyter Notebook | 1 | 1 | 0 | 0 |
GitHub counts from Oct 20, 4:05 AM.
Power up your mapOne prompt for your AI: drones, live visitors, private repos
- Drones: your AI coding agents fly over the repos they're working in.
- Live visitors: visits to your sites arrive in your city, with signup and sale celebrations.
- Real work: private repos as padlocked buildings, never names or code.
Power up my Caldera map. My page: https://caldera.social/@<my handle>/ (if I don't have a Caldera page yet, help me make one first: https://caldera.social/#install).
Caldera turns my work into a living city on a shared world map (https://caldera.social/world). Help me turn on everything that makes it come alive. Go in order, and ask me before anything that touches production or my keys.
1. My AI agents as drones over my repos
Each coding agent I run (Claude Code, Codex and others) flies as a drone over the repo it's working in. Only a state and a short task title are sent, never code, prompts or file contents; private repos stay padlocked.
- Ask me to open https://caldera.social/settings -> "AI agents on the map" -> Copy setup prompt, and paste it here. It holds my personal agent key and secret: keep them out of every repo, commit and log.
- Follow that prompt exactly. It installs ~/.caldera/agent-hook.mjs, writes ~/.caldera/agent.json (chmod 600) and adds hooks to ~/.claude/settings.json, keeping any hooks already there. Repeat on each computer I code on.
2. Live visitors from my websites
Every visit to my sites arrives in the matching district of my city in real time, and signups and purchases get a celebration. Counts only: no cookies, no IP addresses, no personal data.
- Ask me to open https://caldera.social/settings -> "Live visitors on your city" and paste the snippet lines here (one per district/project), like <script async src="https://caldera.social/t/1.js" integrity="sha384-..." crossorigin="anonymous" data-site="KEY"></script>. Use each line exactly as given, integrity included.
- For each website I run, find its repo on this computer and the district it belongs to (ask me if unsure), and add that district's line to the site's shared layout so every page has it (the root layout, _app/_document, or base template).
- Mark conversions where they happen: call caldera('signup') after a signup and caldera('buy') after a purchase, guarded with if (window.caldera).
- Deploy each site the way it's normally deployed (ask me first if it goes to production).
3. All my real work as buildings
- GitHub: my public repos build the city by themselves. To add private repos as padlocked buildings (no names, no code), install the Caldera GitHub app on the repos I choose from https://caldera.social/settings, then pick how they show under Private repos.
- Obsidian (optional): the Caldera plugin adds a daily journal, AI usage and more to my page and city.
4. Check it worked
Open my city (https://caldera.social/@<my handle>/city.html) and the world map. Visit one of my sites: I should land in my city within a minute. Start an agent task: a drone should appear over that repo.
Rules: never put keys or secrets in a repo, commit or log. Show me each change before you make it. Don't add any other tracking or analytics.Paste it into Claude, ChatGPT or your coding agent. Your keys stay in Settings, never in the prompt.