Getting it into your agent
One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.
npx agentmods add skills/agentfront/frontmcp/basic-inlinenpx skills add agentfront/frontmcp --skill basic-inlinegit clone --depth 1 https://github.com/agentfront/frontmcpWrote this? Show the measurements
A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.
[](https://agentmods.dev/skills/agentfront/frontmcp/basic-inline)<a href="https://agentmods.dev/skills/agentfront/frontmcp/basic-inline"><img src="https://agentmods.dev/badge/skills/agentfront/frontmcp/basic-inline.svg" alt="Measured on agentmods" height="20"></a>What it costs to keep this loaded
Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.
| Model | Per session | Once invoked |
|---|---|---|
| Fable 5 | $0.00019 | $0.00665 |
| Opus 5 | $0.00010 | $0.00332 |
| Sonnet 5 | $0.00004 | $0.00133 |
| Haiku 4.5 | $0.00002 | $0.00067 |
Grade A, and why
basic-inline-skill scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured yesterday.
A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.
Nothing flagged
None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.
How it starts
The opening of the file, as written. The whole thing — 97 lines — stays where its author put it; the contents beside it link to each section on GitHub.
Basic Inline Instruction Skill
A minimal instruction-only skill with inline content and the function builder alternative.
Code
// src/skills/typescript-conventions.skill.ts
import { Skill, SkillContext } from '@frontmcp/sdk';
@Skill({
name: 'typescript-conventions',
description: 'TypeScript coding conventions and patterns for the project',
instructions: `# TypeScript Conventions
## Naming
- Use PascalCase for classes and interfaces
- Use camelCase for variables, functions, and methods
- Use UPPER_SNAKE_CASE for constants
- Use kebab-case for file names
## Types
- Always use explicit return types on public methods
- Prefer \`unknown\` over \`any\` for generic defaults
- Use strict mode (\`strict: true\` in tsconfig)
- Define shared types in a common directory
## Error Handling
- Use specific error classes, not raw Error
- Never use non-null assertions (\`!\`) -- throw proper errors
- Use \`this.fail(err)\` in execution contexts
## Imports
- Use barrel exports (index.ts) for public APIs
- No circular dependencies
- Group imports: external, internal, relative`,
})
class TypeScriptConventionsSkill extends SkillContext {}
// src/skills/code-review-checklist.skill.ts
import { skill } from '@frontmcp/sdk';
// Function-style skill -- no class needed for simple instruction-only skills
const CodeReviewChecklist = skill({
name: 'code-review-checklist',
description: 'Checklist for reviewing pull requests',
instructions: `# Code Review Checklist
## Correctness
- Does the code do what it claims?
- Are edge cases handled?
- Are error paths covered?
## Style
- Does it follow project conventions?
- Are names descriptive and consistent?
- Is the code self-documenting?
## Testing
- Are there tests for new functionality?
- Do tests cover edge cases?
- Is coverage above 95%?
## Security
- No secrets in code or config?
- Input validation present?
- Proper error handling without leaking internals?`,
visibility: 'both',
});
What this file has done since we first saw it
Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.
- yesterday First seen · 97 lines · 19 tokens per session scan A 97bff8dea86f
basic-inline-skill is a skill published in the GitHub repository agentfront/frontmcp (146 stars, last pushed 3d ago), licensed Apache-2.0. It adds 19 tokens to every session and 665 once invoked, about $0.0001 per session on Opus 5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-09-03.
Other skills, from other repositories
javascript-development
JavaScript/TypeScript ES2024+, async/await, DOM manipulation, Node.js, and API integration. Use when writing vanilla JS/TS code, working with REST/fetch APIs, implementing frontend logic, or configuring JS build tools.
typescript-expert
TypeScript and JavaScript expert with deep knowledge of type-level programming, performance optimization, monorepo management, migration strategies, and modern tooling. Use PROACTIVELY for any TypeScript/JavaScript issues including complex type gymnastics, build performance, debugging, and architectural decisions. If…
typescript-expert
TypeScript best practices, advanced types, and patterns.
lint-all
Lint all code (Rust + JS/TS). Use before opening a PR when Rust code was changed.
lint-js
Lint JS/TS code only. Use before opening a PR when only JavaScript or TypeScript files were changed (no Rust).
ast-visitor-pattern
Use the frozen-class/visitor pattern for discriminated unions that have multiple dispatch sites. Use when creating a new set of variants (commands, IR nodes, factory calls) that will be switched over in 2+ places, or when refactoring an existing union type that has grown multiple switch sites.