**NEVER use:**`from tdoc_crawler.crawlers import ...` (this package no longer exists)
### Circular Import Prevention
**Rule:** If you encounter a circular import, refactor the code to eliminate it. Never use `TYPE_CHECKING` guards or lazy imports as a permanent solution.
1. Start with `grepai search` to find relevant code
2. Use `grepai trace` to understand function relationships
3. Use `Read` tool to examine files from results
4. Only use Grep for exact string searches if needed
## Issue Tracking with beads (bd)
This project uses **bd (beads)** for issue tracking.
Run `bd prime` for workflow context, or install hooks (`bd hooks install`) for auto-injection.
**Locate executable:**
If bash or zsh is used as shell environment: If you need to run `bd` commands but cannot locate the executable, you might need to activate the `mise` environment via:
This project includes specialized skills for different domains. Skills are loaded based on context and provide domain-specific patterns, best practices, and implementation guidance. Skills are located in logical subdirectories under the `.config/skills/` directory.
This project includes specialized skills for different domains. Skills are loaded based on context and provide domain-specific patterns, best practices, and implementation guidance. Skills are located in logical subdirectories under the `.agents/skills/` directory.
### 3GPP Knowledge Skills
For detailed knowledge about 3GPP terms, nomenclature, working groups, meeting structures, TDoc formats, and other telecom-specific information, use the following skills, which are located in the `.config/skills/3gpp/` directory:
For detailed knowledge about 3GPP terms, nomenclature, working groups, meeting structures, TDoc formats, and other telecom-specific information, use the following skills, which are located in the `.agents/skills/3gpp/` directory:
| Skill Name | Description | When to Use |
|-----------|-------------|-------------|
@@ -321,7 +197,7 @@ Whenever you execute shell commands (including via `mise`, `uv`, `pytest`, or an
**Mandatory**: You MUST NOT use the following idiom:
```shell
```python
fromtypingimportTYPE_CHECKING
ifTYPE_CHECKING:
@@ -376,7 +252,7 @@ The project maintains separate documentation for humans and for coding agents:
1.**docs/index.md** - Main documentation entry point (Jekyll-ready).
1.**docs/history/** - Chronological changelog of all significant changes.
1.**docs/agents-md/** - Agent-facing modular implementation and workflow guidance.
**Critical Rules:**
@@ -412,10 +288,6 @@ The project uses **three distinct mechanisms** for fetching TDoc metadata — ea
- Should only be used as a fallback when WhatTheSpec is unavailable or when explicitly requested
- Credentials are only needed for authoritative 3GPP-official data
### Historical Note
A fourth mechanism (FTP/HTTP directory crawling via `parsers/directory.py`) was removed because it only produced placeholder metadata with `title='Pending validation'` — no actual TDoc content was extracted. The Excel document list method fully supersedes it for batch crawling.
## AGENTS.md File Design Guidelines
Each AGENTS.md file serves as long-term memory for the project/submodule, providing coding assistants with essential guidelines, conventions, and context. Below are the principles for designing, writing, and updating these documents.
@@ -496,153 +368,7 @@ Eager imports may only make sense for:
-*very* relevant types that are also used by consumers of this API.
- for constants and very simple types (like enums or types without additional dependencies)
<skills_systempriority="1">
## Available Skills
<!-- SKILLS_TABLE_START -->
<usage>
When users ask you to perform tasks, check if any of the available skills
below can help complete the task more effectively.
- The skill content will load with detailed instructions
- Base directory provided in output for resolving bundled resources
Step-by-step process:
1. Identify a skill from <available_skills> that matches the user's request
2. Run the command above to load the skill's SKILL.md content
3. Follow the instructions in the loaded skill content
4. Skills may include bundled scripts, templates, and references
Usage notes:
- Only use skills listed in <available_skills> below
- Do not invoke a skill that is already loaded in your context
</usage>
<available_skills>
<skill>
<name>visual-explainer</name>
<description>Generate beautiful, self-contained HTML pages that visually explain systems, code changes, plans, and data. Use when the user asks for a diagram, architecture overview, diff review, plan review, project recap, comparison table, or any visual explanation of technical concepts. Also use proactively when you are about to render a complex ASCII table (4+ rows or 3+ columns) — present it as a styled HTML page instead.</description>