global

global is a cursor rule for Cursor from linhai0872/agno-agent-starter. It costs 0 tokens per session (577 once invoked), scanned A, original, MIT.

A set of project-wide development rules for an Agno agent service, including naming, model configuration, performance, and registration conventions.

In plain words
What is it for?
It guides the creation and registration of agents, model setup, API-key configuration, file naming, logging, and code organization.
Why use it?
It helps keep agents consistent with the service architecture and avoids common mistakes such as creating agents in loops or bypassing the standard API.

Cursor rule for Cursor

Install

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.

agentmods
npx agentmods add rules/linhai0872/agno-agent-starter/global
Clone the repo
git clone --depth 1 https://github.com/linhai0872/agno-agent-starter

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 global

README.md
[![agentmods](https://agentmods.dev/badge/rules/linhai0872/agno-agent-starter/global.svg)](https://agentmods.dev/rules/linhai0872/agno-agent-starter/global)
Your own site
<a href="https://agentmods.dev/rules/linhai0872/agno-agent-starter/global"><img src="https://agentmods.dev/badge/rules/linhai0872/agno-agent-starter/global.svg" alt="Measured on agentmods" height="20"></a>
Per session 0 Nothing until a file matches its globs; then the whole rule loads.
When invoked 577 The whole file, excluding the scripts and references it only reads on demand.
Security scan A 0 findings. Scan, not verified.
Origin original No closer match found 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 $0.00000 $0.00577
Opus 5 $0.00000 $0.00289
Sonnet 5 $0.00000 $0.00115
Haiku 4.5 $0.00000 $0.00058

Measured 4d ago against content hash db90f2fd2fe9, method: parsed. Prices are Anthropic first-party input rates as of 2026-08-30, from the pricing page.

Security

Grade A, and why

global 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 4d 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.

.cursor/rules/global.mdc · 74 lines

What it actually says

Agno Agent Service 开发规范

完整规范请参阅项目根目录 AGENTS.md

核心哲学

  1. AgentOS First — 使用 AgentOS 标准 API,不手写 FastAPI 路由
  2. Single Agent 优先 — 90% 场景用单 Agent + 工具解决
  3. 配置与代码分离 — 模型参数用 ModelConfig 配置,不硬编码

命名规则

元素 规则 示例
Agent ID kebab-case github-analyzer
文件名 snake_case.py github_analyzer.py
类名 PascalCase GitHubAnalyzer
函数/变量 snake_case analyze_repo

关键规则

性能

  • 禁止在循环中创建 Agent,Agent 实例是重量级对象
  • 创建一次,复用多次

模型配置

  • 使用 app/models/ModelConfig 统一接口
  • OpenRouter 是主要模型提供商
  • 切换模型只需修改 ModelConfig

API Key 优先级

  1. Agent 级: ModelConfig(api_key_env="XXX_KEY")
  2. Project 级: ProjectConfig(api_key_env="XXX_KEY")
  3. Global 级: OPENROUTER_API_KEY 环境变量

代码风格

  • 禁止在 print/log 中使用 emoji
  • 工具函数返回 str,让模型处理
  • 新 Agent 必须在 app/agents/__init__.py 注册

常见错误

  • 手写 FastAPI 路由(应让 AgentOS 自动生成)
  • 在环境变量里配置模型参数(应在代码中用 ModelConfig)
  • 使用 Team 解决单 Agent 能处理的任务
  • 忘记在 __init__.py 注册新 Agent

快速参考

# Agent 模板
from app.models import ModelConfig, create_model

AGENT_MODEL_CONFIG = ModelConfig(
    model_id="google/gemini-2.5-flash-preview-09-2025",
    temperature=0.1,
    max_tokens=16384,
)

def create_my_agent(db: PostgresDb) -> Agent:
    return Agent(
        id="my-agent",
        model=create_model(AGENT_MODEL_CONFIG),
        db=db,
        instructions=SYSTEM_PROMPT,
        tools=[...],
    )
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. 4d ago First seen · 74 lines · 0 tokens per session scan A db90f2fd2fe9

Subscribe to this mod's changes

global is a cursor rule published in the GitHub repository linhai0872/agno-agent-starter (6 stars, last pushed 7mo ago), licensed MIT. It costs nothing until one of its globs matches a file; then it loads 577 tokens. 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-08-31.