# agentshield Development Patterns
> Auto-generated skill from repository analysis
## Overview
This skill teaches the core development patterns and conventions used in the `agentshield` TypeScript codebase. It covers file naming, import/export styles, commit message conventions, and testing patterns. This guide is designed to help contributors quickly align with the project's established practices and workflows.
## Coding Conventions
### File Naming
- Use **camelCase** for file names.
- Example: `userAgent.ts`, `apiHandler.ts`
### Import Style
- Use **relative imports** for referencing local modules.
- Example:
```typescript
import { fetchData } from './apiHandler';
```
### Export Style
- Use **named exports** for all modules.
- Example:
```typescript
// In apiHandler.ts
export function fetchData() { ... }
```
### Commit Messages
- Follow the **Conventional Commits** specification.
- Use the `feat` prefix for new features.
- Example:
```
feat: add user agent parsing to middleware
```
- Average commit message length: ~59 characters.
## Workflows
### Feature Development
**Trigger:** When adding a new feature to the codebase
**Command:** `/feature-development`
1. Create a new branch for your feature.
2. Implement the feature using camelCase file naming and relative imports.
3. Use named exports for any new modules.
4. Write or update corresponding tests (`*.test.*` files).
5. Commit your changes using the `feat` prefix and a descriptive message.
6. Open a pull request for review.
### Testing
**Trigger:** When verifying code changes or before merging
**Command:** `/run-tests`
1. Identify or create test files matching the `*.test.*` pattern.
2. Run the test suite using the project's test runner (framework unknown; check project scripts).
3. Ensure all tests pass before merging or submitting a pull request.
## Testing Patterns
- Test files follow the `*.test.*` naming convention (e.g., `apiHandler.test.ts`).
- The testing framework is not specified; check for scripts or documentation in the repository.
- Place tests alongside the code they test or in a dedicated test directory.
**Example Test File:**
```typescript
// apiHandler.test.ts
import { fetchData } from './apiHandler';
describe('fetchData', () => {
it('should return expected data', () => {
// test implementation
});
});
Commands
Command
Purpose
/feature-development
Start the feature development workflow
/run-tests
Run the test suite for the codebase
1---2name: agentshield-23description: ```markdown4---5```markdown6# agentshield Development Patterns78> Auto-generated skill from repository analysis910## Overview11This skill teaches the core development patterns and conventions used in the `agentshield` TypeScript codebase. It covers file naming, import/export styles, commit message conventions, and testing patterns. This guide is designed to help contributors quickly align with the project's established practices and workflows.1213## Coding Conventions1415### File Naming16- Use **camelCase** for file names.17 - Example: `userAgent.ts`, `apiHandler.ts`1819### Import Style20- Use **relative imports** for referencing local modules.21 - Example:22 ```typescript23 import { fetchData } from './apiHandler';24 ```2526### Export Style27- Use **named exports** for all modules.28 - Example:29 ```typescript30 // In apiHandler.ts31 export function fetchData() { ... }32 ```3334### Commit Messages35- Follow the **Conventional Commits** specification.36- Use the `feat` prefix for new features.37 - Example: 38 ```39 feat: add user agent parsing to middleware40 ```41- Average commit message length: ~59 characters.4243## Workflows4445### Feature Development46**Trigger:** When adding a new feature to the codebase 47**Command:** `/feature-development`48491. Create a new branch for your feature.502. Implement the feature using camelCase file naming and relative imports.513. Use named exports for any new modules.524. Write or update corresponding tests (`*.test.*` files).535. Commit your changes using the `feat` prefix and a descriptive message.546. Open a pull request for review.5556### Testing57**Trigger:** When verifying code changes or before merging 58**Command:** `/run-tests`59601. Identify or create test files matching the `*.test.*` pattern.612. Run the test suite using the project's test runner (framework unknown; check project scripts).623. Ensure all tests pass before merging or submitting a pull request.6364## Testing Patterns6566- Test files follow the `*.test.*` naming convention (e.g., `apiHandler.test.ts`).67- The testing framework is not specified; check for scripts or documentation in the repository.68- Place tests alongside the code they test or in a dedicated test directory.6970**Example Test File:**71```typescript72// apiHandler.test.ts73import { fetchData } from './apiHandler';7475describe('fetchData', () => {76 it('should return expected data', () => {77 // test implementation78 });79});80```8182## Commands83| Command | Purpose |84|----------------------|-------------------------------------------------|85| /feature-development | Start the feature development workflow |86| /run-tests | Run the test suite for the codebase |87```
Run npx skillmds@latest add affaan-m/agentshield-2 in your terminal (requires Node.js), paste this page's agent-chat prompt into Claude, Cursor, or any MCP-connected agent, or download the SKILL.md file and copy it into your agent's skills directory.
```markdown It is listed under Docs & Writing on SkillMD.
This skill has not completed SkillMD's automated safety review yet. SkillMD never runs a skill's scripts for you; review the SKILL.md before installing.
This skill is tagged as working with Claude Code, Claude.ai, OpenAI Codex. SKILL.md is an open format, so most agents that read a skills directory can load it too.
Yes. Installing skills from SkillMD is free, and the skill stays under its author's original license.
Affaan Mustafa (@affaan-m) published this skill. Their other Agent Skills are listed on their SkillMD profile.