NoDeskAI
Your AI coding agent keeps guessing, over-engineering, and editing code outside the scope you asked for. NoDeskAI fixes that — in one command.
NoDeskAI is a skill-pack for AI coding agents (Claude Code, Cursor, Codex
CLI, Windsurf...): install it once and your agent stops silently guessing
at ambiguous requests, stops bloating simple tasks into over-engineered
solutions, and stops touching code outside what you asked for. It ships
with audit — a built-in scanner that checks the skill/rule files you're
about to trust for bloat, duplicate rules, and prompt-injection patterns.
🇻🇳 Made in Vietnam. Every line of this project — writing, testing, committing, and pushing to GitHub — was done entirely on an Android phone through Termux. No PC, no laptop, no iPad.
Install
pip install nodeskai
Usage
cd your-project
nodeskai init
This writes the full discipline ruleset into all 4 agent-config files
(CLAUDE.md, .cursorrules, AGENTS.md, .windsurfrules) — creating
whichever ones don't exist yet, and appending to any that already have
content of your own (your existing content is kept, NoDeskAI's block is
added below it). It also creates NODESKAI.md as the source of truth.
Every file gets a metadata line (flags + version) at the top so sync
knows how to update it later.
Optional modes
nodeskai init --strict # extra guardrails for high-risk decisions
nodeskai init --fast # relaxed rules for obviously trivial tasks
nodeskai init --product-context # adds a product/team-context skill (missing from the original CLAUDE.md)
--strict and --fast can't be combined (they're opposite modes).
Update when a new skill version is available
nodeskai sync
Updates every file NoDeskAI manages (NODESKAI.md + installed
agent-configs) to match the currently installed NoDeskAI version, keeping
each file's own flags from init and preserving any hand-written content
that came before the NoDeskAI block. Files with no NoDeskAI metadata
(hand-written, never run through init) are reported as [SKIP] — they
don't break the command.
Check installed skill/agent-config files
nodeskai audit
Scans every skill/agent-config file in the project for:
- Bloat — files over 150 lines, where important rules risk getting buried.
- Duplicate rules — a sign of rules being added over time without ever being cleaned up.
- Suspicious patterns — prompt-injection attempts, destructive commands, data-exfiltration signs.
Current status
v0.4.0 — init writes the full skill into all 4 agent-config files at
once, audit is fully functional (bloat / duplicates / suspicious
patterns), sync updates every managed file when a new skill version is
available, keeping each file's own flags.
Support the project
If NoDeskAI is useful to you, you can support it through GitHub Sponsors (link coming soon) or Ko-fi.
License
MIT
Metadata
Release files for nodeskai 0.4.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| nodeskai-0.4.0.tar.gz | 13.3 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| nodeskai-0.4.0-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 27.1 kB
Release files / nodeskai-0.4.0.tar.gz
| Download URL | nodeskai-0.4.0.tar.gz |
|---|---|
| Size | 13.3 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
09d64e280e56d138799c88f865ba4413e9e6d7ea44e6b6dd55aecb24cc98ea70
|
|
BLAKE2b-256 checksum How to use checksums |
71bb9d6a54251d434ee3c81cfa3ab2cd390a6d55a2fd8607470b6b71f076f194
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.14.6
|
Release files / nodeskai-0.4.0-py3-none-any.whl
| Download URL | nodeskai-0.4.0-py3-none-any.whl |
|---|---|
| Size | 13.7 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
82f08d484fb078d498868c0547662a306ac29cb867bae9eefcca2bcc608dc65d
|
|
BLAKE2b-256 checksum How to use checksums |
effe007f042045c12e891427f4847daaa2405390f48b078add2f1eb1b3c0ac9e
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.14.6
|