https://github.com/aitomatic/dana
Domain-Aware Neurosymbolic Agent (Dana), an agent-native programming language
https://github.com/aitomatic/dana
agent agentic-ai agents ai-alliance generative-ai neurosymbolic neurosymbolic-ai neurosymbolism programming-language programming-languages
Last synced: 4 months ago
JSON representation
Domain-Aware Neurosymbolic Agent (Dana), an agent-native programming language
- Host: GitHub
- URL: https://github.com/aitomatic/dana
- Owner: aitomatic
- License: other
- Created: 2025-09-06T19:12:32.000Z (5 months ago)
- Default Branch: release
- Last Pushed: 2025-09-21T08:29:49.000Z (4 months ago)
- Last Synced: 2025-09-24T13:59:54.756Z (4 months ago)
- Topics: agent, agentic-ai, agents, ai-alliance, generative-ai, neurosymbolic, neurosymbolic-ai, neurosymbolism, programming-language, programming-languages
- Language: Python
- Homepage: https://aitomatic.github.io/dana/
- Size: 74 MB
- Stars: 30
- Watchers: 3
- Forks: 2
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE.md
Awesome Lists containing this project
README
# Dana: The World’s First Agentic OS
## Build deterministic expert agent easily with Dana.
### A complete Expert Agent Development Toolkit: Agentic out of the box. Grounded in domain expertise.
---
## Why Dana?
Most frameworks make you choose:
- **Too rigid** → narrow, specialized agents.
- **Too generic** → LLM wrappers that fail in production.
- **Too much glue** → orchestration code everywhere.
Dana gives you the missing foundation:
- **Deterministic** → flexible on input, consistent on output — reliable results every run.
- **Contextual** → built-in memory and knowledge grounding let agents recall, adapt, and reason with domain expertise.
- **Concurrent by default** → non-blocking execution; agents run tasks in parallel without threads or async code.
- **Composable workflows** → chain simple steps into complex, reproducible processes that capture expert know-how.
- **Local** → runs on your laptop or secure environments, ensuring privacy, speed, and mission-critical deployment.
- **Robust** → fault-tolerant by design, agents recover gracefully from errors and edge cases.
- **Adaptive** → agents learn from feedback and evolving conditions, improving performance over time.
---
## Install and Launch Dana
💡 **Tip:** Always activate your virtual environment before running or installing anything for Dana.
```bash
# Activate your virtual environment (recommended)
source venv/bin/activate # On macOS/Linux
# or
venv\Scripts\activate # On Windows
pip install dana
dana studio # Launch Dana Agent Studio
dana repl # Launch Dana Repl
```
- For detailed setup (Python versions, OS quirks, IDE integration), see [Tech Setup](https://github.com/aitomatic/dana/blob/release/docs/tech-setup.md).
---
## What’s Included in v0.5
### Agent Studio
Turn a problem statement into a draft expert agent with three parts — agent, resources, workflows. Studio generates a best-match workflow and lets you extend it with resources (documents, generated knowledge, web search) or edit workflows directly.
### Agent-Native Programming Language
A Python-like `.na` language with a built-in runtime that provides agentic behaviors out of the box — concurrency, knowledge grounding, and deterministic execution — so you don’t have to wire these up yourself.
What this means for you: You can build and iterate on expert agents faster, with less setup and more confidence they’ll run reliably in production.
Full release notes → [v0.5 Release](https://github.com/aitomatic/dana/blob/release/docs/releases/v0.5.md).
---
## First Expert Agent in 4 Steps
1. **Define an Agent**
```dana
agent RiskAdvisor
```
2. **Add Resources**
```dana
resource_financial_docs = get_resources("rag", sources=["10-K.pdf", "Q2.xlsx"])
```
3. **Follow an Expert Workflow**
```dana
def analyze(...): return ...
def score(...): return ...
def recommend(...): return ...
def wf_risk_check(resources) = analyze | score | recommend
result = RiskAdvisor.solve("Identify liquidity risks", resources=[resource_financial_docs], workflows=[wf_risk_check])
print(result)
```
4. **Run or Deploy**
```bash
dana run my_agent.na # Run locally
dana deploy my_agent.na # Deploy as REST API
```
---
## Learn More
- [Core Concepts](https://github.com/aitomatic/dana/blob/release/docs/core-concepts.md) → Agents, Resources, Workflows, Studio.
- [Reference](https://github.com/aitomatic/dana/blob/release/docs/reference/language.md) → Language syntax and semantics.
- [Primers](https://github.com/aitomatic/dana/tree/release/docs/primers) → Deep dives into Dana language design.
---
## Community
- 🐞 [Issues](https://github.com/aitomatic/dana/issues)
- 💬 [Discuss on Discord](https://discord.gg/dana)
## Enterprise support
- [Contact Aitomatic Sales](mailto:sales@aitomatic.com)
---
## License
Dana is released under the [MIT License](https://github.com/aitomatic/dana/blob/release/LICENSE.md).
© 2025 Aitomatic, Inc.