{"id":45777911,"url":"https://github.com/datalayer/codeai","last_synced_at":"2026-02-26T10:45:12.418Z","repository":{"id":336890401,"uuid":"1110810996","full_name":"datalayer/codeai","owner":"datalayer","description":"✨ Code AI - A CLI for data analysis that interacts with the Agent Runtimes via AG-UI and ACP protocols.","archived":false,"fork":false,"pushed_at":"2026-02-14T19:38:46.000Z","size":732,"stargazers_count":2,"open_issues_count":1,"forks_count":0,"subscribers_count":0,"default_branch":"main","last_synced_at":"2026-02-15T01:35:39.074Z","etag":null,"topics":["ai-agents","cli","code"],"latest_commit_sha":null,"homepage":"https://codeai.datalayer.tech","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"bsd-3-clause","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/datalayer.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null},"funding":{"github":["datalayer"]}},"created_at":"2025-12-05T18:56:15.000Z","updated_at":"2026-02-14T14:46:17.000Z","dependencies_parsed_at":null,"dependency_job_id":null,"html_url":"https://github.com/datalayer/codeai","commit_stats":null,"previous_names":["datalayer/codeai"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/datalayer/codeai","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/datalayer%2Fcodeai","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/datalayer%2Fcodeai/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/datalayer%2Fcodeai/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/datalayer%2Fcodeai/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/datalayer","download_url":"https://codeload.github.com/datalayer/codeai/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/datalayer%2Fcodeai/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":29856746,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-02-26T08:51:08.701Z","status":"ssl_error","status_checked_at":"2026-02-26T08:50:19.607Z","response_time":89,"last_error":"SSL_read: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["ai-agents","cli","code"],"created_at":"2026-02-26T10:45:11.489Z","updated_at":"2026-02-26T10:45:12.408Z","avatar_url":"https://github.com/datalayer.png","language":"Python","funding_links":["https://github.com/sponsors/datalayer"],"categories":[],"sub_categories":[],"readme":"\u003c!--\n  ~ Copyright (c) 2025-2026 Datalayer, Inc.\n  ~\n  ~ BSD 3-Clause License\n--\u003e\n\n[![Datalayer](https://assets.datalayer.tech/datalayer-25.svg)](https://datalayer.ai)\n\n[![Become a Sponsor](https://img.shields.io/static/v1?label=Become%20a%20Sponsor\u0026message=%E2%9D%A4\u0026logo=GitHub\u0026style=flat\u0026color=1ABC9C)](https://github.com/sponsors/datalayer)\n\n# ✨ Code AI\n\n[![PyPI - Version](https://img.shields.io/pypi/v/codeai)](https://pypi.org/project/codeai)\n\n\u003e A CLI for data analysis that interacts with the Agent Runtimes via AG-UI and ACP protocols.\n\nCode AI is an AI-powered CLI agent built on [Pydantic AI](https://ai.pydantic.dev) that helps with code analysis, Jupyter notebooks, and data science workflows.\n\n\u003cimg src=\"https://images.datalayer.io/products/codeai/codeai_short_cut.gif\"/\u003e\n\n## Installation\n\n### Via pip\n\n```bash\npip install codeai\n```\n\n### From Source\n\n```bash\ngit clone https://github.com/datalayer/codeai.git\ncd codeai\npip install -e .\n```\n\n### Quick Install (Recommended)\n\n```bash\ncurl -fsSL https://raw.githubusercontent.com/datalayer/codeai/main/install.sh | bash\n```\n\n\n## Usage\n\nSpecial commands available in interactive mode:\n- `/exit`: Exit the session\n- `/markdown`: Show the last response in markdown format\n- `/multiline`: Toggle multiline input mode (use Ctrl+D to submit)\n- `/cp`: Copy the last response to clipboard\n\n### Launch with Preconfigured Agent\n\nYou can launch CodeAI with a specific agent configuration using the `--agentspec-id` parameter:\n\n```bash\ncodeai --agentspec-id codemode-paper/financial-viz\n```\n\nAvailable agent IDs can be found in the [agentspecs repository](https://github.com/datalayer/agentspecs/tree/main/agentspecs/agents). Each agent is optimized for specific tasks and comes with pre-configured tools and capabilities.\n\n**Important:** Before launching an agent, make sure to set the required environment variables for its MCP servers and skills. Check the agent's configuration in the agentspecs repository to see which MCP servers and skills it uses, then refer to:\n- [MCP Servers environment variables](https://github.com/datalayer/agentspecs/tree/main/agentspecs/mcp-servers)\n- [Skills environment variables](https://github.com/datalayer/agentspecs/tree/main/agentspecs/skills)\n- [Environment variables documentation](https://github.com/datalayer/agentspecs/tree/main/agentspecs/envvars)\n\n### Custom Agent\n\nYou can customize the agent by importing and modifying it:\n\n```python\nfrom codeai.cli import agent\n\n# Add custom tools or modify behavior\n@agent.tool()\ndef my_custom_tool(data: str) -\u003e str:\n    \"\"\"Custom tool description\"\"\"\n    return f\"Processed: {data}\"\n\n# Run the CLI with customizations\nagent.to_cli_sync()\n```\n\n## Features\n\n- **Data Analysis**: Get help with code review, debugging, and optimization\n- **Jupyter Notebooks**: Assistance with notebook workflows and data exploration\n- **Data Science**: Support for pandas, numpy, scikit-learn, and other libraries\n- **Interactive Chat**: Conversational interface for iterative problem-solving\n- **Animated Loading**: Beautiful spinner animation while processing queries\n- **Powered by Pydantic AI**: Built on the robust Pydantic AI framework\n\n## Development\n\nInstall development dependencies:\n\n```bash\npip install -e \".[test,lint,typing]\"\n```\n\nRun tests:\n\n```bash\npytest\n```\n\n## License\n\nBSD 3-Clause License - see [LICENSE](LICENSE) for details.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdatalayer%2Fcodeai","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fdatalayer%2Fcodeai","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdatalayer%2Fcodeai/lists"}