Thanks for your interest in contributing! CODEC is MIT licensed and welcomes contributions.
git clone https://github.com/AVADSA25/codec.git
cd codec
./install.sh
python3 -m pytest # All tests should passOpen an issue on GitHub with:
- What you expected
- What happened
- Your setup (macOS version, Python version, LLM provider)
Skills are Python files in ~/.codec/skills/. Use the template:
"""My Custom Skill"""
SKILL_NAME = "my_skill"
SKILL_TRIGGERS = ["trigger phrase 1", "trigger phrase 2"]
SKILL_DESCRIPTION = "What this skill does"
def run(task, app="", ctx=""):
return "Result spoken back to user"Drop it in ~/.codec/skills/ — CODEC loads it on restart.
- Fork the repo
- Create a branch:
git checkout -b feature/my-feature - Make changes
- Run tests:
python3 -m pytest - Push and open a PR
- Python 3.10+
- No external dependencies unless absolutely necessary
- Every skill needs: SKILL_NAME, SKILL_TRIGGERS, SKILL_DESCRIPTION, run()
- Error handling: never bare
except:— alwaysexcept Exception as e:
codec.py — Entry point (imports modules)
codec_config.py — Configuration and constants
codec_keyboard.py — Keyboard listener and input handling
codec_dispatch.py — Skill matching and dispatch
codec_agent.py — LLM agent session builder
codec_overlays.py — Tkinter overlay popups
codec_compaction.py — Context compaction for memory
codec_memory.py — FTS5 memory search
codec_agents.py — Multi-agent crew framework
codec_voice.py — Voice call WebSocket pipeline
codec_dashboard.py — Web dashboard + API
codec_textassist.py — Right-click text services
codec_search.py — Web search (DuckDuckGo/Serper)
codec_mcp.py — MCP server for external tools
codec_heartbeat.py — System health monitoring
skills/ — 50+ skill plugins
tests/ — 168+ pytest tests
python3 -m pytest # All tests
python3 -m pytest -v # Verbose
python3 -m pytest -k "test_skills" # Specific file