{"id":7785838,"url":"https://github.com/dbpunk-labs/octogen","last_synced_at":"2025-04-04T18:04:32.284Z","repository":{"id":212237161,"uuid":"689036886","full_name":"dbpunk-labs/octogen","owner":"dbpunk-labs","description":"Octogen is an Open-Source Code Interpreter Agent Framework","archived":false,"fork":false,"pushed_at":"2024-08-05T17:02:26.000Z","size":1701,"stargazers_count":255,"open_issues_count":28,"forks_count":18,"subscribers_count":6,"default_branch":"main","last_synced_at":"2025-03-28T17:11:19.549Z","etag":null,"topics":["chatgpt","codeinterpreter","codellama","docker","terminal"],"latest_commit_sha":null,"homepage":"https://octogen.dev","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/dbpunk-labs.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSES/Elastic-2.0.txt","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}},"created_at":"2023-09-08T16:38:49.000Z","updated_at":"2025-03-28T13:46:13.000Z","dependencies_parsed_at":"2023-12-13T08:54:37.862Z","dependency_job_id":"a263dbf4-4c5f-4d77-9939-814d4f0a750a","html_url":"https://github.com/dbpunk-labs/octogen","commit_stats":{"total_commits":436,"total_committers":2,"mean_commits":218.0,"dds":0.07798165137614677,"last_synced_commit":"39cc2de9430969c0995a21e89e0af9c841a1dbed"},"previous_names":["dbpunk-labs/octogen","dbpunk-labs/octopus"],"tags_count":49,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dbpunk-labs%2Foctogen","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dbpunk-labs%2Foctogen/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dbpunk-labs%2Foctogen/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dbpunk-labs%2Foctogen/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/dbpunk-labs","download_url":"https://codeload.github.com/dbpunk-labs/octogen/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":247226213,"owners_count":20904465,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","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":["chatgpt","codeinterpreter","codellama","docker","terminal"],"created_at":"2024-04-11T21:12:47.513Z","updated_at":"2025-04-04T18:04:32.263Z","avatar_url":"https://github.com/dbpunk-labs.png","language":"Python","funding_links":[],"categories":["🚀 AI Tools for Vim, Neovim, and Terminal","Python"],"sub_categories":[],"readme":"\u003cp align=\"center\"\u003e\n\u003cimg  width=\"150px\" src=\"https://github.com/dbpunk-labs/octogen/assets/8623385/86af130f-7d0d-4cfb-9410-fc338426938e\" align=\"center\"/\u003e\n\n\n![GitHub Workflow Status (with event)](https://img.shields.io/github/actions/workflow/status/dbpunk-labs/octogen/ci.yaml)\n[![PyPI - Version](https://img.shields.io/pypi/v/og_chat)](https://pypi.org/project/og-chat/)\n![PyPI - Downloads](https://img.shields.io/pypi/dm/og_chat?logo=pypi)\n[![Gitter](https://img.shields.io/gitter/room/octogen/%20)](https://app.gitter.im/#/room/#octogen:gitter.im)\n\n[中文](./README_zh_cn.md)\n\n\u003e ## Octogen\n\u003e an open-source code interpreter   \n\u003e  一款开源可本地部署的代码解释器\n\n## News\n\n* 2023-10-24 🎉 Octogen [v0.5.0](https://github.com/dbpunk-labs/octogen/discussions) has been released 🎉 \n  \nhttps://github.com/dbpunk-labs/octogen/assets/8623385/7445cc4d-567e-4d1a-bedc-b5b566329c41\n\n\n|Supported OSs|Supported Interpreters|Supported Dev Enviroment|\n|----|-----|-----|\n|\u003cimg  width=\"40px\" src=\"https://github.com/dbpunk-labs/octogen/assets/8623385/31b907e9-3a6f-4e9e-b0c0-f01d1e758a21\"/\u003e \u003cimg  width=\"40px\" src=\"https://github.com/dbpunk-labs/octogen/assets/8623385/565d5f93-baac-4a77-ab1c-7d845e2fdb6d\"/\u003e\u003cimg  width=\"40px\" src=\"https://github.com/dbpunk-labs/octogen/assets/8623385/acb7f919-ef09-446e-b1bc-0b50bc28de5a\"/\u003e|\u003cimg  width=\"40px\" src=\"https://github.com/dbpunk-labs/octogen/assets/8623385/6e286d3d-55f8-43df-ade6-38065b78eda1\"/\u003e \u003cimg  width=\"40px\" src=\"https://github.com/dbpunk-labs/octogen/assets/8623385/958d23a0-777c-4bb9-8480-c7350c128c3f\"/\u003e|\u003cimg  width=\"40px\" src=\"https://github.com/dbpunk-labs/octogen/assets/8623385/ec8d5bff-f4cf-4870-baf9-3b0c53f39273\"/\u003e\u003cimg  width=\"40px\" src=\"https://github.com/dbpunk-labs/octogen/assets/8623385/70602050-6a04-4c63-bb1a-7b35e44a8c79\"/\u003e\u003cimg  width=\"40px\" src=\"https://github.com/dbpunk-labs/octogen/assets/8623385/fb543a9b-5235-45d4-b102-d57d21b2e237\"/\u003e \u003cimg  width=\"40px\" src=\"https://github.com/dbpunk-labs/octogen/assets/8623385/8c1c5048-6c4a-40c9-b234-c5c5e0d53dc1\"/\u003e|\n\n\n## Getting Started\n\nRequirement\n* python 3.10 and above\n* pip\n* [docker](https://www.docker.com/products/docker-desktop/) 24.0.0 and above, or [podman](https://podman.io/)\n\n\u003e To deploy Octogen, the user needs permission to run Docker commands.   \n\u003e To use codellama, your host must have at least 8 CPUs and 16 GB of RAM.\n\nInstall the octogen on your local computer\n\n1. Install og_up\n\n```bash\npip install og_up\n```\n\n2. Set up the Octogen service\n   \n```\nog_up\n```\nYou have the following options to select \n* OpenAI , recommanded for daily use\n* Azure OpenAI\n* CodeLlama, \n* Octogen agent services powered by GPT4 and Codellama 34B\n\nThe default is using docker as container engine. use podman with flag `--use_podman` \n\n3. Execute the command `og`, you will see the following output\n\n```\nWelcome to use octogen❤️ . To ask a programming question, simply type your question and press esc + enter\nYou can use /help to look for help\n\n[1]🎧\u003e\n```\n## Development\n\n\nPrepare the environment\n\n```\ngit clone https://github.com/dbpunk-labs/octogen.git\ncd octogen\npython3 -m venv octogen_venv\nsource octogen_venv/bin/activate\npip install -r requirements.txt\n```\n\nRun the sandbox including Agent with mock model and Kernel\n\n```\n$ bash start_sandbox.sh\n$ og\n\nWelcome to use octogen❤️ . To ask a programming question, simply type your question and press esc + \nenter\nUse /help for help\n\n[1]🎧\u003ehello\n╭─ 🐙Octogen ─────────────────────────────────────────────────────────────────────────────────────────╮\n│                                                                                                     │\n│  0 🧠 how can I help you today?                                                                     │\n│                                                                                                     │\n╰─────────────────────────────────────────────────────────────────────────────────────────────────────╯\n[2]🎧\u003e\n\n```\n\n* To use openai for development, just update the config in the `start_sandbox.sh` with the example of [openai-env.example](./env_sample/openai_env.sample)\n* To use azure openai for development, just update the config in the `start_sandbox.sh` with the example of [azure-env.example](./env_sample/azure_env.sample)\n* To use codellama for development, just update the config in the `start_sandbox.sh` with the example of [codellama-env.example](./env_sample/codellama_env.sample)\n\n## Supported API Service\n\n|name|type|status| installation|\n|----|-----|----------------|---|\n|[Openai GPT 3.5/4](https://openai.com/product#made-for-developers) |LLM| ✅ fully supported|use `og_up` then choose the `OpenAI`|\n|[Azure Openai GPT 3.5/4](https://azure.microsoft.com/en-us/products/ai-services/openai-service) |LLM|  ✅ fully supported|use `og_up` then choose the `Azure OpenAI`|\n|[LLama.cpp Server](https://github.com/ggerganov/llama.cpp/tree/master/examples/server) |LLM| ✔️  supported | use `og_up` then choose the `CodeLlama` |\n|[Octopus Agent Service](https://octogen.dev) |Code Interpreter| ✅ supported | apply api key from [octogen.dev](https://www.octogen.dev/) then use `og_up` then choose the `Octogen` |\n\n\n## The internal of local deployment\n\n\n![octogen-internal](https://github.com/dbpunk-labs/octogen/assets/8623385/986f6805-44cf-4bc7-868f-1f6a987ca254)\n\n* Octogen Kernel: The code execution engine, based on notebook kernels.\n* Octogen Agent: Manages client requests, uses ReAct to process complex tasks, and stores user-assembled applications.\n* Octogen Terminal Cli: Accepts user requests, sends them to the Agent, and renders rich results. Currently supports Discord, iTerm2, and Kitty terminals.\n\n## Features\n\n* Automatically execute AI-generated code in a Docker environment.\n* Experiment feature, render images in iTerm2 and kitty.\n* Upload files with the `/up` command and you can use it in your prompt\n* Experiment feature, assemble code blocks into an application and you can run the code directly by `/run` command\n* Support copying output to the clipboard with `/cc` command\n* Support prompt histories stored in the octopus cli\n\nif you have any feature suggestion. please create a discuession to talk about it\n\n## Roadmap\n\n* [roadmap for v0.5.0](https://github.com/dbpunk-labs/octogen/issues/64)\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdbpunk-labs%2Foctogen","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fdbpunk-labs%2Foctogen","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdbpunk-labs%2Foctogen/lists"}