GitHub for AI Characters & Simple Game That Uses Those Characters
Prize Pool
During the hackathon, we made 2 applications - SoulHub and Cat Phish.
SoulHub is a GitHub like way to find and manage AI characters of all kinds. Each character card, called a 'Soul' is a JSON that share a few number of same fields that could be used to either i) be fed into system prompts and contexts of LLMs to create AI characters of varying qualities or ii) be used as basis for knowledge that AI could use to bounce off ideas with a creator. These 'Souls' serve the role of a particular characters' stats - including everything from their personality, personal history that shaped them the way they are, and more. Adding new fields to the 'Soul' is very flexible and user-dependent. We implemented a web interface for SoulHub as a web app that also contains
Cat Phish is a simple competitive game that features 2 cats disguised as fishes trying to eat as many fish as possible while avoiding dangerous sea creatures like jellyfish and sharks. 2 cat characters are designed based on 2 sample character cards ('souls') we pulled and changed to help make the game. The 2 playable avatars each have their own unique special ability. These abilities were designed by feeding in character cards to a LLM - you may check them out here https://g.co/gemini/share/a38207f582f9. It's important to note here that the "Souls" and their interaction with LLMs are meant to be used either as creative inspiration or an automatable pipeline but they are always meant to be used for artistic and creative work.
Side Note:
Game here: https://lovable.dev/projects/d165cfa5-7ef9-4ab3-b0e1-27ef01a05c1f
There was initially a bit of confusion because it wasn’t clear what the difference between Walrus SDK and Tusky SDK were and exactly what types of features and functionalities they can support. We eventually settled on Tusky SDK.
Cat Phish: It's mostly a TypeScript application. The template for the game - UI, most of the hooks, and other reusable assets were generated via an AI design application. For components like wallet integration, we used Privy to weave wallet experience tools like wagmi and Rainbowkit. Nora, as it turns out, is not very good at generating code even when given very specific prompts if it’s a whole project. But it’s good at writing code for specific scripts or understanding inner workings of various infrastructure protocols and how to make good design choices. We leveraged Nora for understanding how Privy works behind the scenes and what types of general design choices could be made when integrating to web applications. What’s hacky about Cat Phish game is that the each playable cat has a unique ability that was ideated with AI based on character card we made and posted on SoulHub.
SoulHub SDK (for future): We ideated on an eventual need for a SoulHub SDK to be used by SoulHub users to efficiently pull and make changes to SoulHub’s character cards. Such an SDK would use ZK proving technology to be able to prove that some user has pulled a specific character card and that they’ve made specific changes if there ever are any. We didn’t implement this as we needed a separate verifier infrastructure for the protocol to work but it would need a ZK-DSL for general proving, ZK rollup Layer 2 to make sure we can robustly store proofs, and a Python (or TypeScript) orchestration pipeline to be able to interact with AI models.