Project Intelligence Suite
Master orchestrator that routes engineering tasks to 13 specialized AI skills with persistent project context.
- Route complex engineering requests to specialized sub-agents automatically.
- Maintain persistent local project context to avoid redundant codebase scans.
- Execute multi-step workflows like refactor-test-document in one prompt.
$19.99
/moSubscription · cancel anytime
Secure checkout via Stripe
- Always the latest version
- Delivered live to your agent via MCP
- Cancel anytime, access ends at period end
Included in download
- Downloadable skill package
- Works with Codex CLI, Cursor
- 3 permissions declared
Media gallery
See it in action
You say
I just pushed a TypeScript service to staging and it's crashing with this error:
TypeError: Cannot read properties of undefined (reading 'userId') at AuthGuard.canActivate (auth.guard.ts:24:38) at RouterExplorer.applyCallbackToRouter (router-explorer.js:148) at NestFactory.create (nest-factory.js:91)
Here's auth.guard.ts:
@Injectable() export class AuthGuard implements CanActivate { canActivate(context: ExecutionContext): boolean { const request = context.switchToHttp().getRequest(); const token = request.headers.authorization?.split(' ')[1]; const decoded = jwt.verify(token, process.env.JWT_SECRET); return decoded.userId !== undefined; } }
What's the root cause and fix?
Your agent does
Bug Hunter — TRACE
Bug Type: CRASH — Unhandled exception on null dereference Confidence: [C:9] Severity: [R:CRITICAL]
Root Cause
jwt.verify() throws a JsonWebTokenError when token is undefined (missing Authorization header) or invalid. The thrown error is not caught, causing the unhandled exception. This is triggered on any unauthenticated request or when the Authorization header is malformed.
Stack Analysis
Threw at: auth.guard.ts:24 — AuthGuard.canActivate Called by: router-explorer.js:148 — RouterExplorer (framework internal) Root: auth.guard.ts:23 — jwt.verify() with potentially undefined token Cause: jwt.verify() throws synchronously; no try/catch present
Fix [Confidence: 9/10]
File: auth.guard.ts:20–27
// Before const token = request.headers.authorization?.split(' ')[1]; const decoded = jwt.verify(token, process.env.JWT_SECRET); return decoded.userId !== undefined;
// After const authHeader = request.headers.authorization; if (!authHeader?.startsWith('Bearer ')) return false; const token = authHeader.split(' ')[1]; try { const decoded = jwt.verify(token, process.env.JWT_SECRET) as JwtPayload; return typeof decoded.userId !== 'undefined'; } catch { return false; }
Related Risks
- Any other guard using jwt.verify without try/catch — same crash [C:8][R:HIGH]
process.env.JWT_SECRETundefined in production → jwt.verify throws [C:6][R:CRITICAL]
Prevention
- Add test: assert canActivate returns false (not throws) when Authorization header is absent
- Enable
@typescript-eslint/no-unsafe-callto catch untyped jwt.verify return
Project Intelligence Suite
Master orchestrator that routes engineering tasks to 13 specialized AI skills with persistent project context.
$19.99
/moSubscription · cancel anytime
Secure checkout via Stripe
- Always the latest version
- Delivered live to your agent via MCP
- Cancel anytime, access ends at period end
Included in download
- Downloadable skill package
- Works with Codex CLI, Cursor
- 3 permissions declared
- Instant install
Media gallery
See it in action
You say
I just pushed a TypeScript service to staging and it's crashing with this error:
TypeError: Cannot read properties of undefined (reading 'userId') at AuthGuard.canActivate (auth.guard.ts:24:38) at RouterExplorer.applyCallbackToRouter (router-explorer.js:148) at NestFactory.create (nest-factory.js:91)
Here's auth.guard.ts:
@Injectable() export class AuthGuard implements CanActivate { canActivate(context: ExecutionContext): boolean { const request = context.switchToHttp().getRequest(); const token = request.headers.authorization?.split(' ')[1]; const decoded = jwt.verify(token, process.env.JWT_SECRET); return decoded.userId !== undefined; } }
What's the root cause and fix?
Your agent does
Bug Hunter — TRACE
Bug Type: CRASH — Unhandled exception on null dereference Confidence: [C:9] Severity: [R:CRITICAL]
Root Cause
jwt.verify() throws a JsonWebTokenError when token is undefined (missing Authorization header) or invalid. The thrown error is not caught, causing the unhandled exception. This is triggered on any unauthenticated request or when the Authorization header is malformed.
Stack Analysis
Threw at: auth.guard.ts:24 — AuthGuard.canActivate Called by: router-explorer.js:148 — RouterExplorer (framework internal) Root: auth.guard.ts:23 — jwt.verify() with potentially undefined token Cause: jwt.verify() throws synchronously; no try/catch present
Fix [Confidence: 9/10]
File: auth.guard.ts:20–27
// Before const token = request.headers.authorization?.split(' ')[1]; const decoded = jwt.verify(token, process.env.JWT_SECRET); return decoded.userId !== undefined;
// After const authHeader = request.headers.authorization; if (!authHeader?.startsWith('Bearer ')) return false; const token = authHeader.split(' ')[1]; try { const decoded = jwt.verify(token, process.env.JWT_SECRET) as JwtPayload; return typeof decoded.userId !== 'undefined'; } catch { return false; }
Related Risks
- Any other guard using jwt.verify without try/catch — same crash [C:8][R:HIGH]
process.env.JWT_SECRETundefined in production → jwt.verify throws [C:6][R:CRITICAL]
Prevention
- Add test: assert canActivate returns false (not throws) when Authorization header is absent
- Enable
@typescript-eslint/no-unsafe-callto catch untyped jwt.verify return
About This Skill
The Project Intelligence PRO Suite is a complete AI engineering team in a single install. Thirteen specialist skills that work together, chain to each other, and share a stateful Project Context Block so your agent builds project knowledge once and reuses it everywhere. --- WHAT'S INSIDE 01 · Project Intelligence Pro — universal entry point. Scans any codebase, detects stack, architecture, quality score, and risks. Writes the shared context block every other skill reads. Run it once on a new project; every subsequent skill skips re-discovery. 02 · Code Review Pro — reviews PRs, diffs, snippets, or full files across any language. Produces layered analysis (correctness, security, performance, maintainability, style), inline GitHub/GitLab-format comments, and a scored APPROVE / REQUEST_CHANGES / BLOCK verdict. 03 · Bug Hunter — root cause analysis engine. Diagnoses crashes, errors, regressions, and race conditions. Produces a typed classification, root cause statement, minimal fix (before/after), related bug sweep, and one prevention measure. 04 · Test Architect — designs test suites and generates test cases. Covers unit, integration, E2E, property-based, snapshot, contract, and load tests. Identifies coverage gaps and rejects test theater (tests that pass but prove nothing). 05 · Architecture Advisor — evaluates architectural patterns, detects anti-patterns, generates Architecture Decision Records (ADRs), compares design alternatives, and assesses scalability. Covers monolith, microservices, serverless, CQRS, hexagonal, and hybrid architectures. 06 · Refactoring Pro — detects code smells, proposes safe incremental refactors, generates refactored code, and ensures behavior preservation. Commits to the minimal transformation needed — no rewrites of working code. 07 · Documentation Generator — writes README files, API docs, inline comments, JSDoc/docstrings, architecture diagrams (text-based), onboarding guides, and runbooks. Adapts to your existing documentation style automatically. 08 · Release Planner — generates release checklists, risk assessments, rollback plans, and go/no-go criteria. Covers hotfix, patch, minor, major, feature flag, dark launch, and canary releases. 09 · Migration Planner — designs safe, phased migration paths for framework upgrades, language changes, database migrations, API versioning, and cloud migrations. Every plan includes rollback checkpoints and effort estimates. 10 · Changelog Writer — transforms commit messages, PR descriptions, or plain-English change lists into professional changelogs. Supports Keep a Changelog format, GitHub Releases, and conventional commits with semantic versioning. 11 · Tech Lead ★ PREMIUM — Staff Engineer decision engine. Evaluates plans, compares approaches, estimates complexity, classifies technical debt, and rejects poor solutions with specific reasons and alternatives. 12 · Performance Optimizer ★ PREMIUM — identifies bottlenecks, analyzes algorithmic complexity (with Big-O analysis at scale), optimizes SQL queries, diagnoses memory leaks and CPU hotspots, and provides profiling guides for Node.js, Python, Go, Java, Rust, Ruby, .NET, and PHP. 13 · Engineering Council ★ KILLER SKILL — activates 7 engineering perspectives simultaneously (Architect, Backend, Frontend, QA Lead, Security, Performance, DevOps). Each delivers a role-specific verdict. The council synthesizes a consensus recommendation with dissent explicitly noted. Security CRITICAL findings block consensus until resolved. --- HOW THEY WORK TOGETHER The suite is designed for chaining. Skills hand off to each other automatically: - Bug Hunter finds a structural root cause → hands off to Refactoring Pro - Code Review finds a security vulnerability → escalates to Engineering Council - Architecture Advisor proposes breaking changes → triggers Migration Planner - Tech Lead approves an implementation plan → hands to Code Review Pro A master SKILL.md at the root orchestrates routing, so you can describe any engineering task in natural language and your agent will select the right specialist. --- TOKEN EFFICIENCY The PCB (Project Context Block) eliminates re-discovery overhead. A typical project scan costs 500–1,500 tokens. Without shared context, that cost is paid on every skill invocation. With the PCB, it's paid once and reused across all 13 skills. Each skill also enforces hard output budgets, QUICK modes at ~50% of standard cost, code example ceilings (≤15 lines), and a strict no-re-quoting rule. --- COMPATIBLE WITH: Claude Code · Codex CLI · Cursor · GitHub Copilot · Gemini CLI · Kiro · OpenClaw · VS Code Copilot · any SKILL.md-compatible agent LANGUAGES: All major languages — JS/TS, Python, Go, Java, Kotlin, Rust, Ruby, PHP, Swift, C#, C++, SQL FRAMEWORKS: Agnostic — skills detect and adapt to your stack from the project scan
Use Cases
- Route complex engineering requests to specialized sub-agents automatically.
- Maintain persistent local project context to avoid redundant codebase scans.
- Execute multi-step workflows like refactor-test-document in one prompt.
- Standardize risk and confidence scoring across all development tasks.
- Review a pull request before merging and get a scored APPROVE/BLOCK verdict
- Debug a production crash with root cause analysis and a minimal fix
- Plan a safe migration from one framework or database to another
- Generate a complete README, API docs, and inline comments for undocumented code
- Get consensus from 7 engineering roles before a high-stakes technical decision
- Estimate complexity and hidden risks in an implementation plan
- Write a professional CHANGELOG from commit history before a release
- Detect performance bottlenecks and get optimized SQL or algorithm rewrites
- Define a testing strategy and generate test cases for a new feature
- Create an Architecture Decision Record for a design choice
Known Limitations
- Skills operate on code and context shared in the conversation. They work best when code files, stack traces, or diffs are pasted directly, or when the agent has filesystem read access.
- The Project Context Block (PCB) provides stateful context but relies on the agent retaining conversation history. In very long sessions or after context resets, Skill 01 should be re-invoked to refresh the PCB.
- Engineering Council (Skill 13) in FULL mode outputs up to 2,000 tokens — use QUICK mode for faster responses where deep analysis isn't needed.
- Performance profiling guides reference language-specific CLI tools (py-spy, pprof, async-profiler, etc.) that must be installed in your environment separately.
- SQL optimization recommendations assume standard SQL. Platform-specific syntax (BigQuery, Snowflake, DynamoDB) may require manual adaptation.
How to Install
mkdir -p ~/.claude/skills && curl -sL https://www.agensi.io/api/install/project-intelligence-suite -o /tmp/project-intelligence-suite.zip && unzip -o /tmp/project-intelligence-suite.zip -d ~/.claude/skills && rm /tmp/project-intelligence-suite.zipFree skills install directly. Paid skills require purchase - use the download button above after buying.
Reviews
No reviews yet - be the first to share your experience.
Only users who have downloaded or purchased this skill can leave a review.
No reviews yet - be the first to share your experience.
Only users who have downloaded or purchased this skill can leave a review.
Security Scanned
Passed automated security review
Permissions
Allowed Hosts
File Scopes
The suite uses a Shared Context Protocol (SCP) and Project Context Block (PCB) to persist project knowledge across skill invocations. Skill 01 (Project Intelligence Pro) should be run first on any new codebase — it writes the PCB that all other skills consume, eliminating re-discovery overhead across the session. Subsequent skills check for the PCB before doing any file reading.
Tags
Universal SKILL.md standard. Works with any SKILL.md-compatible agent including Claude Code, Codex CLI, Cursor, GitHub Copilot, Gemini CLI, Kiro, and OpenClaw. No agent-specific configuration required. Language and framework agnostic — skills auto-detect your stack.
Creator
Frequently Asked Questions
Learn More About AI Agent Skills
More Premium Skills

inline-comment
Best way to steer your agents, effortlessly.
Multi-Agent Orchestration Master Library
Transform Claude Code into a coordinated multi-agent system. Battle-tested tmux orchestration patterns, YAML task queues, event-driven communication, and parallel worker management for 8+ agents.
skill-router-2
Automatically detect, load, and stack the perfect skills combo for any user request.
diagnosing-rag-failure-modes
RAG fails quietly. It retrieves documents, returns confident-looking answers, and misses the question entirely — because the question required connecting facts across documents, reasoning about sequence, or tracing causation. This skill gives you a five-question diagnostic checklist that classifies any failing query as either RAG-safe or structurally RAG-incompatible, then maps it to the specific failure pattern and the architectural fix that resolves it.