Catalog PyPI
Back to packageRELEASE DETAILS

2.12.6

PyPI

aicodec

A lightweight communication layer for developers to interact with LLMs.

Published12 Jan 2026
Direct dependencies18
Transitive dependenciesNot calculated

README

Version 2.12.6 documentation

AI Codec

PyPI version CI License: MIT

AI Codec is a lightweight, CLI-first tool that brings a structured, reviewable, and reversible workflow to applying LLM-generated code to your projects. Instead of chaotic copy-pasting from a chatbot, you get a formal, git-like review process for AI-driven changes.


📖 Full Documentation

For a complete guide, including installation options, a step-by-step tutorial, and the full command reference, please visit the official documentation website:

https://stevie1704.github.io/aicodec/


✨ Features

  • Structured Interaction: Enforces a simple JSON schema, turning raw LLM output into a structured set of changes.
  • Safe Review Process: The aicodec apply command launches a web UI with a git-like diffing experience so you can see exactly what will change before any files are touched.
  • Developer in Control: Selectively apply, reject, or even edit the LLM's suggestions live in the diff viewer.
  • Atomic & Reversible Changes: The apply and revert commands make applying LLM suggestions a safe transaction that you can undo with a single command.
  • Flexible File Aggregation: Gather relevant project files into a single context for the LLM with powerful inclusion/exclusion rules.
  • Clipboard Integration: Pipe your LLM's response directly from your clipboard into the review process.

Downloads & popularity

Awaiting observations

No metric observations yet

Download counts and popularity will appear here as the collector receives them.

Declared dependencies 18

Native requirements
18 direct targetsNot calculated transitive count
Package / targetRequirementRelationship
jsonschema
Environment
{
  "extras": "",
  "marker": null,
  "requires_python": ">=3.10",
  "evaluation": "NOT_EVALUATED"
}
jsonschemaruntime
pyperclip
Environment
{
  "extras": "",
  "marker": null,
  "requires_python": ">=3.10",
  "evaluation": "NOT_EVALUATED"
}
pyperclipruntime
pathspec
Environment
{
  "extras": "",
  "marker": null,
  "requires_python": ">=3.10",
  "evaluation": "NOT_EVALUATED"
}
pathspecruntime
tiktoken
Environment
{
  "extras": "",
  "marker": null,
  "requires_python": ">=3.10",
  "evaluation": "NOT_EVALUATED"
}
tiktokenruntime
jinja2
Environment
{
  "extras": "",
  "marker": null,
  "requires_python": ">=3.10",
  "evaluation": "NOT_EVALUATED"
}
jinja2runtime
rich
Environment
{
  "extras": "",
  "marker": null,
  "requires_python": ">=3.10",
  "evaluation": "NOT_EVALUATED"
}
richruntime
pytest
Environment
{
  "extras": "",
  "marker": "extra == \"dev\"",
  "requires_python": ">=3.10",
  "evaluation": "NOT_EVALUATED"
}
pytest; extra == "dev"runtime
pytest-mock
Environment
{
  "extras": "",
  "marker": "extra == \"dev\"",
  "requires_python": ">=3.10",
  "evaluation": "NOT_EVALUATED"
}
pytest-mock; extra == "dev"runtime
pytest-cov
Environment
{
  "extras": "",
  "marker": "extra == \"dev\"",
  "requires_python": ">=3.10",
  "evaluation": "NOT_EVALUATED"
}
pytest-cov; extra == "dev"runtime
pytest-html
Environment
{
  "extras": "",
  "marker": "extra == \"dev\"",
  "requires_python": ">=3.10",
  "evaluation": "NOT_EVALUATED"
}
pytest-html; extra == "dev"runtime
mypy
Environment
{
  "extras": "",
  "marker": "extra == \"dev\"",
  "requires_python": ">=3.10",
  "evaluation": "NOT_EVALUATED"
}
mypy; extra == "dev"runtime
ruff
Environment
{
  "extras": "",
  "marker": "extra == \"dev\"",
  "requires_python": ">=3.10",
  "evaluation": "NOT_EVALUATED"
}
ruff; extra == "dev"runtime
bandit
Environment
{
  "extras": "",
  "marker": "extra == \"dev\"",
  "requires_python": ">=3.10",
  "evaluation": "NOT_EVALUATED"
}
bandit; extra == "dev"runtime
pre-commit
Environment
{
  "extras": "",
  "marker": "extra == \"dev\"",
  "requires_python": ">=3.10",
  "evaluation": "NOT_EVALUATED"
}
pre-commit; extra == "dev"runtime
codespell
Environment
{
  "extras": "",
  "marker": "extra == \"dev\"",
  "requires_python": ">=3.10",
  "evaluation": "NOT_EVALUATED"
}
codespell; extra == "dev"runtime
mkdocs
Environment
{
  "extras": "",
  "marker": "extra == \"dev\"",
  "requires_python": ">=3.10",
  "evaluation": "NOT_EVALUATED"
}
mkdocs; extra == "dev"runtime
mkdocs-material
Environment
{
  "extras": "",
  "marker": "extra == \"dev\"",
  "requires_python": ">=3.10",
  "evaluation": "NOT_EVALUATED"
}
mkdocs-material; extra == "dev"runtime
pyinstaller
Environment
{
  "extras": "",
  "marker": "extra == \"dev\"",
  "requires_python": ">=3.10",
  "evaluation": "NOT_EVALUATED"
}
pyinstaller; extra == "dev"runtime

Distribution files

2 collected
aicodec-2.12.6-py3-none-any.whl

bdist_wheel · 56.01 KB · Python py3

Source file
aicodec-2.12.6.tar.gz

sdist · 50.76 KB · Python source

Source file

Repository

PENDING
stevie1704/aicodec

Shared repository data · GitHub

License detected in repository
Not collected

Metadata history

Meaningful changes
Current collected state Current

Observed since 21 Oct, 10:12 UTC

No superseded metadata states collected. Unchanged observations do not create new revisions.

Record identity

package_version:60de5c9b6ecfe79817dfb3f21cdcfc98121efbe1cc020a9f861d8d361b5ceb6e

Other collected versions

View all collected versions →