Agent skill

Agent System

by gridaco in gridaco/grida

Grida AI agent system work: @grida/daemon (DaemonServer, loopback HTTP perimeter, files/workspaces, secrets store, daemon discovery) and @grida/agent (the agent tenant: sessions, providers/BYOK…

Apache-2.0Auto-check passedMobile

Install Agent System

skills CLI
$ npx skills add gridaco/grida --skill agent-system -a claude-code

Project install by default; add -g for ~/.claude/skills/.

GitHub CLI
$ gh skill install gridaco/grida agent-system --agent claude-code

Project scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).

Manual copy
$ git clone --depth 1 https://github.com/gridaco/grida.git skills-src && mkdir -p .claude/skills && cp -r skills-src/.agents/skills/agent-system .claude/skills/agent-system && rm -rf skills-src

Use ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.

Claude Code skills documentation · loads skills from .claude/skills/

Facts

Skill name
agent-system
GitHub stars
2.7k
Token cost
~3.4k tokens
SKILL.md length
1,306 words
Files
1
Skills in repo
29
Repo updated
First seen
Licence
Apache-2.0

At a glance

Grida AI agent system work: @grida/daemon (DaemonServer, loopback HTTP perimeter, files/workspaces, secrets store, daemon discovery) and @grida/agent (the agent tenant: sessions, providers/BYOK…

  • Works in 6 steps: Per-launch Basic Auth credentials are… → The preload signs requests; credentials… → The daemon checks auth on every request… → …
  • Packages/grida-daemon/
  • SKILL.md covers When to use this skill, Shape, Package Boundaries and Ownership Rules, plus 5 more sections
  • Calls pnpm and sqlite3

What it does

Agent System is an agent skill from gridaco/grida. Grida AI agent system work: @grida/daemon (DaemonServer, loopback HTTP perimeter, files/workspaces, secrets store, daemon discovery) and @grida/agent (the agent tenant: sessions, providers/BYOK, runtime/tool execution, skills discovery, prompts, tiers, sandbox hosts). Use for packages/grida-daemon/, packages/grida-ai-agent/, desktop sidecar protocol changes, agent chat transport, and bugs in agent state or streams. For pure Electron window, preload, menu, deep-link, or CDP work, use desktop.

Its SKILL.md is about 3.4k tokens, which your agent loads only when the skill is triggered. It is a single SKILL.md file with no bundled scripts.

It sits in Mobile. The licence is Apache-2.0.

When your agent uses it

  • Packages/grida-daemon/
  • Packages/grida-ai-agent/
  • Desktop sidecar protocol changes
  • Agent chat transport

Example prompts

  • “/agent-system”

Workflow steps

6 steps, taken from the first numbered list in SKILL.md.

  1. Per-launch Basic Auth credentials are supplied by the host adapter.
  2. The preload signs requests; credentials stay in closure, not on
  3. The daemon checks auth on every request — tenant routes included.
  4. Referer checks defend against same-origin XSS reaching the loopback server.
  5. Secrets APIs expose presence/set/delete semantics, not raw secret reads.
  6. The auth_token query carriage is exactly the GET SSE routes the agent

What it can do on your machine

Read from SKILL.md and the folder at commit 165496f. It shows what the files ask for, not the result of running them.

  • Tool permissions

    Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.

    From allowed-tools in the SKILL.md frontmatter.

  • Runs code

    Shell commands in SKILL.md call:

    • pnpm
    • sqlite3

    From the folder's file list and the shell code blocks in SKILL.md.

  • Network

    No URLs in SKILL.md. Its commands use pnpm, which can reach the network depending on how they are called.

    From URLs in SKILL.md, links to its own repository left out.

  • Credentials

    Names no API keys, tokens, secrets or passwords.

    From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.

Context cost

Agent System loads about 3.4k tokens when it runs. Until then it costs about 131 tokens; SKILL.md has 1,306 words of instructions outside code blocks.

Always · name and description, kept in context so the agent knows when to use it
~131
When it runs · the whole SKILL.md, loaded when a task matches
~3.4k

Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.

Safety

Auto-check passed

The automated check found no risky patterns in SKILL.md.

Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.

SKILL.md

The full file from gridaco/grida at commit 165496f, republished under its Apache-2.0 licence (© gridaco). 1,306 words, ~3,357 tokens.

Download SKILL.mdSave it as .claude/skills/agent-system/SKILL.md (or your agent's skills folder).
name
agent-system
description
Grida AI agent system work: `@grida/daemon` (DaemonServer, loopback HTTP perimeter, files/workspaces, secrets store, daemon discovery) and `@grida/agent` (the agent tenant: sessions, providers/BYOK, runtime/tool execution, skills discovery, prompts, tiers, sandbox hosts). Use for `packages/grida-daemon/**`, `packages/grida-ai-agent/**`, desktop sidecar protocol changes, agent chat transport, and bugs in agent state or streams. For pure Electron window, preload, menu, deep-link, or CDP work, use `desktop`.

Grida Agent System

This skill is for the two packages behind Grida Desktop and future hosts (issue #927): @grida/daemon — the local host layer (DaemonServer lifecycle, the loopback HTTP perimeter, files/recents/workspaces, the secrets store, daemon discovery, the tenant seam) — and @grida/agent — the agent TENANT mounted on it (sessions, providers, tool execution, prompt composition, skills, the AI-SDK stream contract). Dependency direction is one-way: @grida/agent imports @grida/daemon; the daemon is AI-free by contract (pinned by packages/grida-daemon/src/__boundary__.test.ts).

Use desktop for Electron shell work: BrowserWindow, menus, preload, native dialogs, file associations, deep links, and CDP verification.

Adjacent: sdk-design and sdk-seam for exported contracts and host seams, security when a change touches a GRIDA-SEC boundary.

When to use this skill

  • Editing packages/grida-daemon/** or packages/grida-ai-agent/**.
  • Changing DaemonServer lifecycle, the tenant seam, server capabilities, HTTP routes, transport, Basic Auth, Referer policy, sessions, workspaces/files, recents, secrets, BYOK providers, model tiers, sandbox policy, shell policy, runtime, tools, prompts, skills, or message streams.
  • Touching the desktop sidecar protocol because the daemon contract changed.
  • Debugging empty file lists, missing sessions, broken stream parts, provider resolution, tool-call behavior, or agent state recovery.
  • Editing renderer agent chat transport when the bug is in stream/session semantics rather than Electron bridge presence.

Skip this skill for BrowserWindow, menu, native dialog, file association, deep-link, packaging, or preload-only bugs. Use desktop for those.


Shape

Host adapter (Desktop today, other hosts later)
  - supplies auth material, workspace roots, entitlement hooks, sandbox wrapper
  - starts the composed daemon (createAgentDaemon) as sidecar or CLI daemon
        |
        v
DaemonServer (@grida/daemon/server)
  - loopback Hono perimeter (CORS -> Referer -> Basic Auth)
  - host capability routes: files, recents, workspaces + secrets store
  - the DaemonTenant seam (static typed list, not a plugin registry)
        |
        v
Agent tenant (@grida/agent/server — createAgentTenant)
  - AI route groups: /agent, /events, /sessions, /secrets, /providers,
    /images, /video
  - sessions SQLite, endpoint configs, runtime + run loop, stream registry
        |
        v
Runtime-agnostic agent core (@grida/agent)
  - protocol DTOs, prompts, tiers, skills, toolset, AI-SDK UI-message stream

The host owns process supervision and native capability exposure. The daemon package owns the perimeter and host capabilities; the agent package owns agent-system semantics.


Package Boundaries

Two packages, each with intentional entrypoints.

@grida/daemon (the host layer — AI-free by contract):

  • @grida/daemon: handshake vocabulary (DaemonCapabilities, DAEMON_PROTOCOL), local-resource DTOs.
  • @grida/daemon/server: Node-only DaemonServer, buildServer, the DaemonTenant/DaemonServices seam, Daemon discovery, and the tenant toolkit (WorkspaceRegistry, workspaceFs, SecretsStore, shell runner, request validation).
  • @grida/daemon/transport: Basic Auth signing, fetch/SSE helpers, and DaemonTransport.Client (daemon route groups).
  • @grida/daemon/sandbox: the sandbox policy frame (buildDaemonSandboxPolicy).

@grida/agent (the agent tenant — depends on @grida/daemon):

  • @grida/agent: neutral contracts, provider metadata, run/stream DTOs, createAgent, prompt composition, toolset, tiers, and session row types.
  • @grida/agent/server: Node-only createAgentTenant + createAgentDaemon (the composed server hosts run).
  • @grida/agent/transport: AgentTransport.Client extends DaemonTransport.Client with the tenant routes (sessions, run/stream, events, secrets, providers, images, video).
  • @grida/agent/sandbox: composed policy (buildAgentDaemonSandboxPolicy — daemon frame + AI upstream hosts).
  • @grida/agent/fs: storage-agnostic virtual filesystem and AI-SDK file tools.
  • @grida/agent/fs/backends/opfs: browser OPFS backend.
  • @grida/agent/todos: plan store and todo_write.
  • @grida/agent/tiers: model tier constants.

Keep browser-safe imports neutral. Node-only code must stay behind server, sandbox, or host adapter entrypoints. Never add an AI import to @grida/daemon — the boundary test fails, and the change belongs in the tenant. A non-AI host capability (a new file route, a viewer backend) belongs in @grida/daemon, never here.

Do not create a second desktop-specific agent implementation under desktop/src/**. Desktop supervises and adapts the composed daemon; it does not own the agent semantics.


Ownership Rules

Core tests belong in the owning package first. Perimeter, files, workspaces, secrets-store, and seam bugs get tests under packages/grida-daemon/src/**/*.test.ts; session, provider, runtime, tool, and stream-formatting bugs under packages/grida-ai-agent/src/**/*.test.ts.

Desktop tests should prove Electron imports, starts, and wires the core. They should not duplicate daemon or tenant behavior.

Anti-goals to preserve:

  • Not a general model-provider router.
  • Not a hosted model gateway.
  • Not a billing or entitlement engine.
  • Not a multi-agent orchestration graph.
  • Not a UI framework.
  • Not a desktop bridge package.
  • Not a private chat-history IR; session rows are the contract.

Common Diagnostics

Empty list_files in a workspace-bound agent usually means the workspace filesystem was not hydrated. For design-agent workspace runs, @grida/agent must create AgentFs(NodeFsBackend(root)) and call await fs.hydrate() before tool calls.

An agent that sees SOME files but is missing whole subtrees (a .canvas deck, or most of the repo) is almost always hydrate-scan truncation, not a bug in those files. The walk stops at SCAN_MAX_FILES (10k) / SCAN_MAX_DEPTH and warns [agent-fs] … hydrate scan hit a cap … truncated (sidecar stderr). The usual cause is a large workspace_root containing heavy dirs that are NOT in IGNORED_SCAN_DIRS — vendored toolchains / git submodules (e.g. emsdk) or .claude/worktrees (full repo copies). .gitignore is NOT consulted, so a submodule slips through. Fixes: scope the workspace to the real project subdir, or add the offender to IGNORED_SCAN_DIRS in @grida/daemon's workspaces/scan.ts.

A client-resolved tool call that hangs at input-available (the turn just ends with no result; the assistant never continues) is the server-authoritative model view dropping it. The runtime rebuilds the model's input from the PERSISTED messages (buildModelMessages over listVisibleMessages), NOT the client's array — and it drops any tool call without a terminal result. For a workspace-less session (the desktop file-window sidebar, which resolves fs tools in the renderer over the live editor), the result lives only on the client's next-request assistant message. persistIncomingTail must persist those terminal tool-result parts (it does, as of the file-window sidebar fix) or the call stays input-available forever and the model never sees the answer. Diagnostic tell: workspace sessions show tool_state=output-available parts in sessions.db; a no-workspace session stuck at input-available for EVERY tool call is this class, not a tool bug. (Server-resolved tools are unaffected — the recorder writes their result straight from the stream.)

Broken desktop agent calls can still be package bugs. Check whether the same operation fails through AgentTransport.Client or package tests before debugging Electron.

If a method needs secrets, keep secret reads inside the daemon process (the store is @grida/daemon's SecretsStore; the /secrets routes are tenant-registered). The renderer may check presence and set/delete BYOK keys, but it must not receive raw secret values.

If a change adds host-specific behavior, define the strict host capability contract first. Do not let Node, Electron, or renderer-only imports leak into neutral package entrypoints.


Show full SKILL.md (396 more words)Show less

Live state on disk (inspecting a real session)

You CAN inspect a real running session — the host persists agent state under ~/.grida/agent/, separate from Electron's userData (the desktop supervisor passes it to the sidecar as --user-data; see home.join("agent") in desktop/src/main/agent-sidecar-supervisor.ts):

  • sessions.db — SQLite (WAL): chat_sessions (incl. workspace_root, mode, parent_id), chat_messages, chat_parts. Schema in src/session/schema.ts.
  • workspaces.json — the workspace registry (id → root).
  • auth.json, recent.json.

Read it read-only (don't perturb the live WAL). The first thing to check for "why can't the agent see X" is workspace_root — the agent only sees files under it (and only up to the hydrate cap, above):

sh
sqlite3 "file:$HOME/.grida/agent/sessions.db?mode=ro" \
  "SELECT id, workspace_root, mode FROM chat_sessions WHERE id='ses_…';"

Security Boundary

The daemon's HTTP perimeter (@grida/daemon) is one layer of GRIDA-SEC-004 when hosted by Desktop:

  1. Per-launch Basic Auth credentials are supplied by the host adapter.
  2. The preload signs requests; credentials stay in closure, not on window.grida.
  3. The daemon checks auth on every request — tenant routes included.
  4. Referer checks defend against same-origin XSS reaching the loopback server.
  5. Secrets APIs expose presence/set/delete semantics, not raw secret reads.
  6. The auth_token query carriage is exactly the GET SSE routes the agent tenant declares via sse_query_token_paths — never widened.

If a route can mutate local files, start processes, read secrets, or execute tools, review both the transport contract and the host capability that grants it.


Verification

For package changes (run the pair for the package(s) you touched):

sh
pnpm --filter @grida/daemon typecheck && pnpm --filter @grida/daemon test
pnpm --filter @grida/daemon build
pnpm --filter @grida/daemon test:browser   # perimeter system harness (Chromium)

pnpm --filter @grida/agent typecheck && pnpm --filter @grida/agent test
pnpm --filter @grida/agent build

A change to @grida/daemon requires rebuilding it before @grida/agent typechecks (the tenant compiles against the daemon's dist).

For session-store smoke checks against a real SQLite file:

sh
pnpm --filter @grida/agent smoke:sessions:live

If the change crosses into Desktop sidecar wiring, also run the Electron owner checks from the desktop skill.


Pointers

Daemon (packages/grida-daemon/):

  • Package overview: packages/grida-daemon/README.md
  • DaemonServer: packages/grida-daemon/src/daemon-server.ts
  • HTTP frame + seam + daemon routes: packages/grida-daemon/src/http/ (server.ts holds DaemonServices/DaemonTenant)
  • Daemon transport: packages/grida-daemon/src/transport.ts
  • Discovery: packages/grida-daemon/src/daemon.ts
  • Workspaces/files: packages/grida-daemon/src/workspaces.ts, packages/grida-daemon/src/files/
  • Hydrate-scan policy (ignored dirs + caps): packages/grida-daemon/src/workspaces/scan.ts
  • Secrets store + shell runner: packages/grida-daemon/src/secrets.ts, packages/grida-daemon/src/shell/
  • AI-free boundary pin: packages/grida-daemon/src/__boundary__.test.ts

Agent tenant (packages/grida-ai-agent/):

  • Package overview: packages/grida-ai-agent/README.md
  • Tenant + composed daemon: packages/grida-ai-agent/src/server.ts
  • Agent routes: packages/grida-ai-agent/src/http/routes/
  • Agent transport: packages/grida-ai-agent/src/transport.ts
  • Runtime: packages/grida-ai-agent/src/runtime/
  • Sessions: packages/grida-ai-agent/src/session/
  • Virtual fs tools: packages/grida-ai-agent/src/fs/
  • Live on-disk state (real sessions/workspaces): ~/.grida/agent/ (sessions.db, workspaces.json) — see "Live state on disk" above
  • Providers: packages/grida-ai-agent/src/providers/
  • Skills/prompts/tools: packages/grida-ai-agent/src/skills/, packages/grida-ai-agent/src/agent/, packages/grida-ai-agent/src/tools/
  • Tool-design doctrine (read before adding/widening a tool — minimal surface, host-config off the args, grounded/honest knobs, auto-resolved inputs, context economy, clear typed failures, tool-vs-connector-vs-skill): docs/wg/ai/agent/tool-design.md; in-code checklist is the TOOL-DESIGN block in src/tools/index.ts
  • Desktop sidecar adapter: desktop/src/agent-sidecar.ts
  • Renderer agent chat transport: editor/lib/agent-chat/

© gridaco, Apache-2.0. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file

Files

Just SKILL.md in .agents/skills/agent-system of gridaco/grida.

Open the folder on GitHubat commit 165496f

Compare with similar skills

Agent System next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.

Agent System compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Agent System this skillgridaco/grida2.7k—~3.4kAutomated safety check: PassApache-2.0
React Native Best Practicesvercel-labs/openreview1.7k17 repos~1.1kAutomated safety check: PassMIT
Swiftui Protwostraws/SwiftUI-Agent-Skill5k2 repos~1kAutomated safety check: PassMIT
Ip As LogoKartikLabhshetwar/better-shot2.4k1 repos~4.3kAutomated safety check: PassMIT
Compose Multiplatform Patternsmonta-app/ocpp-emulator1795 repos~2kAutomated safety check: PassApache-2.0
Aso Appstore Screenshotsadamlyttleapps/claude-skill-aso-appstore-screenshots1.8k1 repos~9.6kAutomated safety check: PassMIT

Similar skills

  • React Native Best Practices

    vercel-labs/openreview

    Official

    A prioritized rule set for React Native and Expo apps covering list performance, animation, navigation, UI patterns, state, rendering, monorepos and configuration.

    1.7k GitHub starsUsed in 17 repos~1.1k tokens
    MobileAuto-check passed
  • Swiftui Pro

    twostraws/SwiftUI-Agent-Skill

    Comprehensively reviews SwiftUI code for best practices on modern APIs, maintainability, and performance.

    5k GitHub starsUsed in 2 repos~1k tokens
    MobileAuto-check passed
  • Ip As Logo

    KartikLabhshetwar/better-shot

    Generate extremely simple, cute, personified square character images with rounded heavy forms, two purposeful character colors, one solid background color, and a dominant lower-corner composition.

    2.4k GitHub starsUsed in 1 repo~4.3k tokens
    MobileAuto-check passed
  • Compose Multiplatform Patterns

    monta-app/ocpp-emulator

    Compose Multiplatform and Jetpack Compose patterns for KMP projects — state management, navigation, theming, performance, and platform-specific UI.

    179 GitHub starsUsed in 5 repos~2k tokens
    MobileAuto-check passed
  • Aso Appstore Screenshots

    adamlyttleapps/claude-skill-aso-appstore-screenshots

    Generate high-converting App Store screenshots by analyzing your app's codebase, discovering core benefits, and creating ASO-optimized screenshot images using Nano Banana Pro.

    1.8k GitHub starsUsed in 1 repo~9.6k tokens
    MobileAuto-check passed
  • Swiftui UI Patterns

    AFK-surf/OpenBridge

    Best practices and example-driven guidance for building SwiftUI views and components.

    430 GitHub starsUsed in 4 repos~887 tokens
    MobileAuto-check passed

More from gridaco/grida

All 29 skills in this repo
  • Desktop

    gridaco/grida

    Grida Desktop Electron shell and release-impact work: BrowserWindow, preload, window.grida, menus, protocol/deep links, file associations, Forge, path-scoped bridge security, Electron-only UI bugs…

    2.7k GitHub stars~3.2k tokensUpdated yesterday
    Auto-check: notes
  • Io Figma

    gridaco/grida

    Guides work on the Figma I/O package (@grida/io-figma, packages/grida-canvas-io-figma/).

    2.7k GitHub stars~2.2k tokensUpdated yesterday
    Auto-check: notes
  • Opt Library

    gridaco/grida

    Set up, download, verify, and seed the optional Grida Library developer corpus into local Supabase.

    2.7k GitHub stars~1.4k tokensUpdated yesterday
    Auto-check passed
  • Vision

    gridaco/grida

    Query images with a local Ollama vision model without loading the image into the main agent context.

    2.7k GitHub stars~1.5k tokensUpdated yesterday
    Auto-check passed
  • AI Models

    gridaco/grida

    Research, compare, and update shared AI model JSON for TypeScript, web, and Rust consumers.

    2.7k GitHub stars~5.7k tokensUpdated yesterday
    Auto-check passed
  • Database

    gridaco/grida

    Use BEFORE editing any file in supabase/migrations/ or supabase/schemas/, OR when the user runs a /database subcommand (compact local migration, rls scenarios, align).

    2.7k GitHub stars~3.2k tokensUpdated yesterday
    Auto-check passed

Categories

Questions about Agent System

What does Agent System do?

Grida AI agent system work: @grida/daemon (DaemonServer, loopback HTTP perimeter, files/workspaces, secrets store, daemon discovery) and @grida/agent (the agent tenant: sessions, providers/BYOK…. Agent System is an agent skill from gridaco/grida. Grida AI agent system work: @grida/daemon (DaemonServer, loopback HTTP perimeter, files/workspaces, secrets store, daemon discovery) and @grida/agent (the agent tenant: sessions, providers/BYOK, runtime/tool execution, skills discovery, prompts, tiers, sandbox hosts).

When should I use Agent System?

Agent System fits situations like: packages/grida-daemon/; packages/grida-ai-agent/; desktop sidecar protocol changes; agent chat transport.

How do I install Agent System in Claude Code?

Run `npx skills add gridaco/grida --skill agent-system -a claude-code`. Or copy the skill folder (.agents/skills/agent-system in gridaco/grida) into .claude/skills/agent-system in your project. Claude Code loads it when a task matches its description.

How do I install Agent System in Codex?

Run `npx skills add gridaco/grida --skill agent-system -a codex`. Or copy the skill folder (.agents/skills/agent-system in gridaco/grida) into .agents/skills/agent-system in your project. Codex loads it when a task matches its description.

Can I use Agent System in Cursor, Gemini CLI or GitHub Copilot?

Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add gridaco/grida --skill agent-system -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/agent-system, .gemini/skills/agent-system, .github/skills/agent-system and .opencode/skills/agent-system in your project.

What does Agent System need to run?

Going by SKILL.md and its folder, Agent System needs the command-line tools its instructions call (pnpm and sqlite3).

Does Agent System access the network?

SKILL.md contains no URLs. Any network use would come from the scripts or tools the agent runs. This is read from the text; nothing was executed.

Is Agent System safe to install?

Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. Review the folder before installing.

What licence does Agent System use?

Agent System is published under the Apache-2.0 licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.

How many tokens does Agent System use?

About 3.4k tokens (SKILL.md is roughly 13k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.

What are the alternatives to Agent System?

Skills that share tags, products or a category with Agent System: React Native Best Practices (vercel-labs/openreview, 1.7k stars), Swiftui Pro (twostraws/SwiftUI-Agent-Skill, 5k stars), Ip As Logo (KartikLabhshetwar/better-shot, 2.4k stars) and Compose Multiplatform Patterns (monta-app/ocpp-emulator, 179 stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Agent System?

gridaco (a GitHub organization) maintains it in gridaco/grida, which has 2,657 GitHub stars. The repository holds 29 skills in this directory. The repository was last updated on October 6, 2026.

Source: gridaco/grida on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.