nodes

nodes is a cursor rule for Cursor from gabrielmoreira/agent-skills-mirror. It costs 0 tokens per session (607 once invoked), scanned A, a copy of nodes, MIT.

A set of rules for creating custom tool nodes in the AgentDock source tree. These nodes are self-contained tools that follow the project’s established structure and output conventions.

In plain words
What is it for?
Use it when adding or updating a tool under `/src/nodes`, including its directory structure, parameter schema, registration, and displayed output.
Why use it?
It helps contributors add tools in a consistent way and avoid breaking registration, initialization, shared types, or component formatting.

Cursor rule for Cursor

Written for Cursor: installed under .cursor/.

Needs its repository: it reads a path above its own folder, which exists only inside the repository. The line is import { Tool } from '../types';.

Good fit Use it when adding or updating a tool under /src/nodes, including its directory structure, parameter schema, registration, and displayed output.

Compare 6 cursor rules from other repositories ↓
Install

Getting it into your agent

It runs from inside its repository, so the clone comes first — what it calls does not travel with the file alone.

Clone the repo
git clone --depth 1 https://github.com/gabrielmoreira/agent-skills-mirror
agentmods
npx agentmods add rules/gabrielmoreira/agent-skills-mirror/nodes

Made for: Cursor.

Wrote 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.

agentmods badge for nodes

README.md
[![agentmods](https://agentmods.dev/badge/rules/gabrielmoreira/agent-skills-mirror/nodes/github.svg)](https://agentmods.dev/rules/gabrielmoreira/agent-skills-mirror/nodes)
Your own site
<a href="https://agentmods.dev/rules/gabrielmoreira/agent-skills-mirror/nodes"><img src="https://agentmods.dev/badge/rules/gabrielmoreira/agent-skills-mirror/nodes/github.svg" alt="Measured on agentmods" height="20"></a>

Or the 80×15 button, for a site that already has a row of RSS and ATOM ones. Only the verdict fits; the numbers stay here.

agentmods 80×15 button for nodes

Your own site · 80×15
<a href="https://agentmods.dev/rules/gabrielmoreira/agent-skills-mirror/nodes"><img src="https://agentmods.dev/badge/rules/gabrielmoreira/agent-skills-mirror/nodes.svg" alt="Reviewed on agentmods" width="80" height="20"></a>
Per session 0 Nothing until a file matches its globs; then the whole rule loads.
When invoked 607 The whole file, excluding the scripts and references it only reads on demand.
Security scan A 0 findings. A grade says what 26 rules found in the file — not that it is safe.
Origin 100% copy Near-identical to another mod in the catalogue.
Token cost

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.

ModelPer sessionOnce invoked
Fable 5.1 $0.00000 $0.00607
Opus 5.5 $0.00000 $0.00243
Sonnet 5.5 $0.00000 $0.00121
Haiku 4.5 $0.00000 $0.00061

Measured 1mo ago against content hash 8b3161f0585f, method: parsed. Prices are Anthropic first-party input rates as of 2026-10-07, from the pricing page.

Security

Grade A, and why

nodes 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 1mo ago.

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.

Origin

This is a copy

100% identical to nodes — 0 lines differ, which has more behind it and is treated as the original. This page carries a canonical link to it rather than competing with it.

mirrors/repos/AgentDock@AgentDock/.cursor/rules/nodes.mdc · 96 lines

How it starts

The opening of the file, as written. The whole thing — 96 lines — stays where its author put it; the contents beside it link to each section on GitHub.

Node Development Rules (/src/nodes)

This file provides guidelines for creating and contributing custom tools in the /src/nodes directory.

Core Concepts

The nodes in AgentDock are specialized tool nodes that extend the system's capabilities:

  • Each node is self-contained in its own directory
  • Nodes follow the Vercel AI SDK pattern
  • They provide component-based output formatting

Directory Structure

The actual /src/nodes directory contains:

  • [README.md](mdc:src/nodes/README.md): Overview and architecture documentation
  • [custom-tool-contributions.md](mdc:src/nodes/custom-tool-contributions.md): Detailed guide for contributors
  • [registry.ts](mdc:src/nodes/registry.ts): Node registration system
  • [init.ts](mdc:src/nodes/init.ts): Node initialization logic
  • [types.ts](mdc:src/nodes/types.ts): Shared types for nodes
  • Individual tool directories (e.g., search/, weather/, cognitive-tools/)

Implementation Guidelines

Tool Implementation Pattern

Each tool follows this pattern:

// index.ts
import { z } from 'zod';
import { Tool } from '../types';
import { MyComponent } from './components';

// 1. Define parameters schema
const myToolSchema = z.object({
  input: z.string().describe('What this input does')
});

// 2. Create and export your tool
export const myTool: Tool = {
  name: 'my_tool',
  description: 'What this tool does',
  parameters: myToolSchema,
  async execute({ input }) {
    // 3. Get your data
    const data = await fetchData(input);
    
    // 4. Use your component to format output
    return MyComponent(data);
  }
};

// 5. Export for auto-registration
export const tools = {
  my_tool: myTool
};

Best Practices

  • Use proper error handling with try/catch blocks
  • Create components to format tool output
  • Store API keys in environment variables, never hardcode them
  • Implement server-side API calls for security
  • Follow TypeScript best practices with proper typing
  • Include comprehensive JSDoc comments
  • Create fallbacks for when external services are unavailable

Read the full file on GitHub · 96 lines

Changes

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.

  1. 1mo ago First seen · 96 lines · 0 tokens per session scan A 8b3161f0585f

Subscribe to this mod's changes

nodes is a cursor rule published in the GitHub repository gabrielmoreira/agent-skills-mirror (19 stars, last pushed yesterday), licensed MIT. It costs nothing until one of its globs matches a file; then it loads 607 tokens. A static security scan graded it A with 0 findings. It is 100% identical to nodes, differing in 0 lines, and is treated as a copy.