ipollowork-maintainable-code

Enforces reuse-first, minimal, performant code changes in the iPolloWork repository.

5.3k|976|Updated Aug 25, 2025
One-click install
npx skills add https://github.com/Devin-AXIS/iPolloWork --skill ipollowork-maintainable-code
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: ipollowork-maintainable-code
Source: https://github.com/Devin-AXIS/iPolloWork/tree/main/.codex/skills/ipollowork-maintainable-code
Command: npx skills add https://github.com/Devin-AXIS/iPolloWork --skill ipollowork-maintainable-code

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill includes scripts (resource) and references (resource) components.

What problem does it solve?

Code changes in a large monorepo often introduce duplicate implementations, unjustified new files and dependencies, runtime artifacts in source trees, and parallel architectures. This Skill acts as a mandatory quality gate that audits every code change against iPolloWork's maintainability rules before completion.

Core Features & Use Cases

  • Reuse-First Workflow: Requires searching existing components, services, and types with ripgrep before creating anything, and records a reuse decision for each new file or dependency.
  • Automated Change Audit: Runs a Node.js script that inspects the git diff for forbidden directory names, new top-level directories, duplicate source files, cross-domain private imports, new dependencies, and runtime artifacts in source trees.
  • Repository Boundary Guidance: Ships a reference map defining where UI, server, desktop, orchestrator, and shared package code belongs, plus dependency direction and runtime artifact layout rules.
  • Use Case: When adding a new feature to the iPolloWork desktop app, the Skill guides placement in the correct domain, blocks a v2 copy of an existing component, and fails the audit if a generated export is written under apps/server/src.

Quick Start

Ask the AI to implement your code change using the ipollowork-maintainable-code skill and run its audit script before finishing.

Frequently Asked Questions about ipollowork-maintainable-code

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I run the iPolloWork maintainability audit on my changes?

Run node .codex/skills/ipollowork-maintainable-code/scripts/audit-changes.mjs from the repository root after making your edits. The script inspects the git diff and untracked files, then prints JSON errors and warnings and exits nonzero if any error exists.

What does the audit script check in a git diff?

It checks for new top-level directories, forbidden directory names like temp or v2, single-file new directories, new package.json dependencies, runtime artifacts under apps/server/src, cross-domain private imports, exact duplicate source files, and duplicate export names.

When should I create a new file or directory in iPolloWork?

Create a file only when it has a distinct owner and responsibility that would make an existing file less coherent, and a directory only for a real multi-file subsystem. New top-level directories require explicit user approval and a repository-level architectural reason.

Where should new React UI code go in the iPolloWork repository?

Primitive controls belong in apps/app/src/components/ui, app-wide composed UI in apps/app/src/components, and feature-specific UI, hooks, and state in apps/app/src/react-app/domains/<domain>. Move UI to packages/ui only when multiple applications consume it.

Why does the audit fail when I add generated files under apps/server/src?

Runtime artifacts such as exports, uploads, renders, audio, and images must live in workspace session directories like <workspace>/design/<session-id>, not in source trees. The audit flags these as errors so generated output never pollutes the server source directory.

When is extracting a shared abstraction justified?

Extract only when two real consumers need meaningful shared behavior or centralization prevents contract and security drift. Do not create a generic abstraction for a single caller or copy a component into a renamed v2 variant.