इस प्रोजेक्ट के बारे में

AIForge एक native C++23 terminal AI client है, जिसकी रचना provider-neutral runtime kernel के आसपास की गई है। यह Venice (venice-cpp के माध्यम से) streaming interactions, one-shot और pipe आधारित AI workflows तथा persistent, resumable chat sessions का समर्थन करता है। Interactive Chat interface robust terminal rendering के लिए TermForge पर आधारित है। मुख्य सुविधाएँ: - **Provider-Neutral Kernel**: core logic AI providers से अलग है, जिससे durable, replayable runs और projections संभव होते हैं। - **Durable Sessions**: session state, events और transcripts SQLite में persist होते हैं; sessions को resume या continue किया जा सकता है। - **Replayable Task Planning**: structured `ask_user` tool use, plan revisions, task graphs और conflict analysis के साथ exact-revision decisions का समर्थन। - **File-Backed Personas**: XDG config में `.md` या `.txt` files से system instructions load होते हैं; content hashing और atomic updates के साथ सुरक्षित प्रबंधन। - **Model Discovery & Selection**: capabilities, pricing और context size सहित उपलब्ध models की सूची; CLI या interactive `/model` command से filter और select करें। - **Transient Character Selection**: core configuration बदले बिना provider-specific characters का runtime selection। - **Local Audio Support (Linux)**: ALSA (RtAudio) के माध्यम से capture और playback, AI models के सामने audio expose किए बिना। - **Image Handling**: RasterForge के जरिए PNG, JPEG और WebP generate, view और export करें; content-addressed storage और validation सहित। - **Bounded Execution**: policy-gated process execution, input/output size limits और capability restrictions से सुरक्षा बढ़ती है। - **Usage & Spend Control**: प्रति session token usage और monetary cost track करता है तथा configurable spend ceilings लागू करता है। - **Slash Command System**: help, completion और availability checks वाला unified, extensible command registry। - **Static Analysis & Style**: clang-format 20 formatting और clang-tidy 20 static analysis build policies में लागू हैं। प्रोजेक्ट CMake 3.28+ के साथ GCC 13+ या Clang 17+ से build होता है और TermForge, venice-cpp तथा RasterForge पर निर्भर करता है। SQLite durable session storage देता है; tests और linting build में integrated हैं। Architecture security, determinism और auditability पर केंद्रित है। ADR और design documents development decisions को नियंत्रित करते हैं; UTF-8 validation, content-addressed artifacts तथा unsafe inputs या symlinks की strict rejection इसके प्रमुख constraints हैं। AIForge headless CLI और interactive TUI दोनों modes में चलता है। बिना arguments terminal में शुरू करने पर interactive Chat workspace खुलता है। stdin piping के जरिए diff reviews, code analysis और automation भी समर्थित हैं। BSD 3-clause license के अंतर्गत उपलब्ध।