"What if a Tamagotchi had a neural network and could learn stuff?" - Gigazine , Hackaday
A transparent cognitive sandbox disguised as a digital pet squid with a neural network you can see thinking
- Part educational neuro tool, part sim game, part fever dream
- A unique intersection of 1990s retro-gaming aesthetic and modern computational neuroscience.
- Build-your-own neural network - learn how an NN works by raising one as a pet
Compiled binaries for Windows, Mac and Linux: see Releases page
curl -sSL https://raw.githubusercontent.com/ViciousSquid/Dosidicus/2.6.2.0_LatestVersion/linux_setup.sh | bash
Dosidicus is a digital squid born with a randomly wired brain.
Feed him, stimulate neurons, watch him learn.
- He starts with 8 neurons.
- He grows new structure via neurogenesis and rewires using Hebbian learning
- He forms memories.
- He develops quirks.
Every squid is different. Every save file is a cognitive history.
Under the hood runs STRINg simulation engine:
- Built from scratch in NumPy
- No TensorFlow. No PyTorch. No NEAT.
- Fully visible neuron activations
- Structural growth over time
- Dual memory system
- Headless training mode
- Most AI is a black box: Dosidicus lets you see the mind forming - every neuron is visible, stimulatable, understandable.
The squid serves as a digital pioneer in our quest to understand the mechanisms of thought and the evolution of autonomy in a synthetic world.
Want the full conceptual philosophy behind Dosidicus? Read the Cognitive Sandbox Manifesto
No two squids are wired the same.
- Early interactions permanently alter their structure (good or bad!).
- Tiny differences amplify.
- Habits form. Fears emerge. Personalities drift.
Your squid's brain is a cognitive history - shaped by you.
So share it.
-
Export save files and let others explore your squid's neural structure.
-
Post screenshots of strange activation patterns and unexpected growth.
-
Show bizarre learned behaviors (Why is yours afraid of poop?)
-
Compare cognitive histories and trace how experience shaped structure.
-
Did yours grow 40 neurons?
-
Did it develop a persistent avoidance loop?
-
Did you accidentally create a neurotic reward spiral?
Every squid is an experiment.
Two targets are provided: headless (CLI trainer) and gui (PyQt5 app with X11).
Headless (recommended for containers):
docker build -t dosidicus:headless --target headless .
docker run --rm -v ${PWD}/headless_output:/app/output dosidicus:headless --ticks 10000 --output /app/output/trained_brain.jsonGUI (Linux host with X11 or WSLg):
docker build -t dosidicus:gui --target gui .
docker run --rm \
-e DISPLAY=$DISPLAY \
-e QT_X11_NO_MITSHM=1 \
-v /tmp/.X11-unix:/tmp/.X11-unix:rw \
-v ${PWD}/saves:/app/saves \
-v ${PWD}/logs:/app/logs \
dosidicus:guiCompose:
docker compose up --build
docker compose --profile gui up --buildWSLg note: If the GUI fails to start with a Qt platform plugin error, try:
export QT_QPA_PLATFORM=wayland
docker compose --profile gui up --buildNote: On Windows without WSLg, you will need an X server and a valid DISPLAY value to run the GUI container.
Note: Attempting to build the Docker container on Windows ARM64 will fail because there is no pyqt5 wheel [32] - Use the prebuilt binary from releases instead
Troubleshooting (quick):
- If
DISPLAYis empty in WSL: WSLg is not active. Use WSLg or run an X server on Windows. - If Docker errors mention
docker_engine/pipe not found: start Docker Desktop and ensure WSL integration is enabled. - If GUI still exits with Qt plugin errors: rebuild the image (
docker compose --profile gui build --no-cache) and retry.
-
41,636 lines, one developer, 28 months, GPL 2.0 license
-
Dependencies:
- Python ^3.9
- PyQt5 ^5.15 (GUI framework)
- numpy ^1.21 (neural network computations)
- OPTIONAL onnxruntime or onnxruntime-directml (more info)
-
Core Structure: Modular codebase in
src/including brain designer, decision engine, learning algorithms, personality traits, memory management, UI components, and interaction systems. Entry point viamain.py.
- Plugin System: Extensible architecture with built-in plugins for achievements (tracking milestones) and multiplayer (networked interactions).
- Save System: Persistent saves in
saves/for pet states, autosaves, and achievement logs. - Headless Mode: Standalone training and simulation in
headless/for GUI-less operation, ideal for background training or server environments (experimental) - Custom Brains: Library of pre-configured neural networks in
custom_brains/(e.g., "Plant-Seeker", "Insomniac") for quick behavior setup. - Memory Management: Dual memory system (
_memory/) with long-term and short-term storage for learning persistence. - Examples and Tools: Example squids, configuration files (
config.ini), and version tracking.