plugins/lisa/skills/plan-reduce-max-lines-per-function/SKILL.md
This skill should be used when reducing the maximum lines per function threshold and fixing all violations. It updates the eslint threshold configuration, identifies functions exceeding the new limit, generates a brief with refactoring strategies, and creates a plan with tasks to split oversized functions.
npx skillsauth add codyswanngt/lisa plan-reduce-max-lines-per-functionInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
Target threshold: $ARGUMENTS lines per function
If no argument provided, prompt the user for a target.
bun run lint 2>&1 | grep "max-lines-per-function"
If no violations at $ARGUMENTS, report success and exit.
Compile the gathered information into a structured brief:
Reduce max lines per function threshold to $ARGUMENTS.
Functions exceeding threshold (ordered by line count):
1. [file:function] (lines: X, target: $ARGUMENTS) - Line Y
2. ...
Configuration change: eslint.thresholds.json, maxLinesPerFunction to $ARGUMENTS
Refactoring strategies: extract functions, early returns, extract conditions, use lookup tables, consolidate logic
Verification: `bun run lint 2>&1 | grep "max-lines-per-function" | wc -l` → Expected: 0
Invoke /plan-execute with this brief to create the implementation plan.
documentation
Onboard a user to the project via its LLM Wiki. Interviews the user about themselves in relation to the project, captures that to project-scoped memory only, then gives a guided tour of what the project is and sample questions they can ask. Use when someone is new to the project or asks to be onboarded. Read-mostly — it does not open PRs or write PII into the wiki.
documentation
Migrate an existing, hand-rolled wiki implementation onto the lisa-wiki kernel — phased and compatibility-first, with a strict no-loss guarantee. Use when adopting lisa-wiki in a repo that already has its own wiki/, ingest skills, docs, or roles. Renaming things into the canonical shape is fine; losing functionality or data is not. Ends by running /doctor.
development
Health-check the LLM Wiki. Reports orphan pages, contradictions, stale claims, broken internal links, missing index/log coverage, structure-manifest violations, and secret/tenant leaks. Use periodically or before hardening a wiki. Read-only — it reports findings, it does not fix them.
testing
Ingest source material into the LLM Wiki. With an argument (URL, file path, or prompt) it ingests that one source; with no argument it runs a full ingest across every enabled non-external-write source. Routes to the right connector, then runs the ordered pipeline (source note → synthesis → index → log → verify → state → commit/PR). Use whenever new knowledge should enter the wiki.