Skip to content
Back to skills

Atris

ASecurity

Codebase intelligence — generates structured navigation maps with file:line references so agents stop re-scanning the same files every session. Use when exploring code, answering 'where is X?', or onboarding to a new codebase.

  • 71 stars
  • 0 votes
  • 0 copies
  • 1 view
  • Added September 3, 2026
ai-agentsgobashnodegit

Security analysis

A100/100

Scanned September 3, 2026

npx -y skills add atrislabs/atris --skill atris --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of Atris?

Add the live security badge to your README. It updates with every re-scan.

Security grade badge for Atris
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/atrislabs-atris-atris/badge)](https://www.skillsdirectory.com/skills/atrislabs-atris-atris)

More formats (shields.io, HTML) on the badges page. Keep it an A: scan every change in CI with Pro.

Download with Pro
SKILL.md
---
name: atris
description: "Codebase intelligence — generates structured navigation maps with file:line references so agents stop re-scanning the same files every session. Use when exploring code, answering 'where is X?', or onboarding to a new codebase."
version: 1.1.0
requires:
  bins:
    - rg
tags:
  - developer-tools
  - codebase-navigation
  - token-optimization
  - code-map
  - context-management
---

# Atris — Codebase Intelligence

Maintain a structured map of the codebase with exact file:line references. One scan, permanent knowledge. Saves 80-95% of tokens on code exploration.

## Scope

- Use in any repo where you need to navigate code.
- Creates `atris/MAP.md` as the single navigation index.

## MAP-first rule

Before searching for anything in the codebase:

1. Read `atris/MAP.md`
2. Found your keyword → go directly to file:line. Done.
3. Not found → search once with `rg`, then **add the result to MAP.md**

The map gets smarter every time you use it. Never let a discovery go unrecorded.

## First time setup

If `atris/MAP.md` doesn't exist, generate it:

1. Create `atris/` folder in the project root
2. Scan the codebase (rules below)
3. Write the result to `atris/MAP.md`
4. Tell the user: "Built your codebase map at atris/MAP.md."

If `atris/MAP.md` already exists, use it. Regenerate only if the user requests it or the map is clearly stale (references missing files, line numbers way off).

## How to scan

Skip: `node_modules`, `.git`, `dist`, `build`, `vendor`, `__pycache__`, `.venv`, `.env*`, `*.key`, `*.pem`, `credentials*`, `secrets*`

Use ripgrep to extract structure:

```bash
# Key definitions
rg "^(export|function|class|const|def |async def |router\.|app\.|@app\.)" --line-number -g "!node_modules" -g "!.git" -g "!dist" -g "!.env*"

# Route definitions
rg "(get|post|put|delete|patch)\s*\(" --line-number -g "*.ts" -g "*.js" -g "*.py"

# Entry points
rg "listen|createServer|app\.start|if __name__" --line-number
```

## MAP.md structure

```markdown
# MAP.md — [Project Name] Navigation Guide

> Generated by Atris | Last updated: YYYY-MM-DD

## Quick Reference

rg "functionName" path/to/file.ext    # Description (line N)
rg "className" path/to/file.ext       # Description (line N)
```

Extract the top 15-25 most important symbols: entry points, exports, route handlers, main classes, config loaders.

### By-Feature Map

Group code by what it does. Every reference includes exact file path and line numbers.

```markdown
### Feature: User Authentication
**Purpose:** Login, registration, token management
- **Entry:** `src/auth/login.ts:45-89` (handleLogin)
- **Validation:** `src/auth/validate.ts:12-67` (validateToken)
- **Model:** `src/models/user.ts:8-34` (User schema)
- **Routes:** `src/routes/auth.ts:5-28` (POST /login, POST /register)
```

### By-Concern Map

Group by cross-cutting patterns (error handling, logging, auth middleware, etc).

### Critical Files

Flag high-impact files with why they matter and key functions with line numbers.

### Entry Points

How execution flows — dev server startup, request lifecycle, build pipeline.

## Keeping it fresh

Update MAP.md surgically when the codebase changes:

- **New file** → add to relevant section
- **Moved/renamed** → update all references
- **New important function** → add to Quick Reference
- **Deleted file** → remove from map
- **Major refactor** → regenerate affected sections

Small updates, not full regeneration. The map evolves with the code.

## Anti-patterns

- Searching without checking MAP first
- Letting discoveries go unrecorded
- Regenerating the full map when a surgical update would do
- Including secrets, credentials, or .env files in the map
- Guessing file locations instead of using the index

Attribution

Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.

Comments

Loading comments…

Newsletter

Get the weekly list of safe new skills, and the ones we pulled.