DEV Community

Cover image for Apa Itu Agen Agensi?
Walse
Walse

Posted on • Originally published at apidog.com

Apa Itu Agen Agensi?

The Agency adalah koleksi *open-source* dari 147 agen AI spesialis untuk Claude Code, Cursor, Aider, Windsurf, GitHub Copilot, dan alat lain. Setiap agen punya kepribadian, hasil teknis terdefinisi, serta metrik keberhasilan. Artikel ini membahas arsitektur, integrasi multi-alat, memori MCP, dan bash script yang mendukung sistem ini.

Coba Apidog hari ini

💡Jika Anda sudah berpikir tentang bagaimana menghubungkan agen-agen ini ke alur kerja API dunia nyata, platform API seperti Apidog dapat membantu: rancang, mock, uji, dan dokumentasikan API yang digunakan agen Anda, lalu tekan “Jalankan” untuk melihat kolaborasi antara agen spesialis dan endpoint Anda. Coba Apidog sekarang dan buat workspace sandbox untuk backend "bertenaga Agency" Anda sendiri.

Anda mungkin sudah familiar dengan prompt seperti “Bertindaklah sebagai pengembang senior” yang terlalu umum. The Agency justru menawarkan 147 spesialis terorganisir dalam 12 divisi. Anggap saja seperti membangun agensi layanan lengkap—semua anggota adalah agen AI yang selalu siap memberi hasil.

Apa Itu The Agency?

Fitur Detail
Total Agen 147 agen spesialis di 12 divisi
Format File Markdown dengan frontmatter YAML (nama, deskripsi, warna, emoji)
Integrasi Mendukung Claude Code, Cursor, Aider, Windsurf, GitHub Copilot, Gemini CLI, OpenCode, OpenClaw, Qwen Code
Lisensi MIT — gratis untuk penggunaan pribadi & komersial
Asal Berawal dari thread Reddit, kini dikelola komunitas
Inovasi Utama Agen berbasis kepribadian, hasil terukur, metrik keberhasilan (bukan prompt generik)

agency-org

Intinya: The Agency mengganti “Bertindaklah sebagai pengembang” dengan spesialisasi seperti “Aktifkan mode Pengembang Frontend” — dengan agen yang benar-benar paham React, Vue, Angular, Core Web Vitals, dan aksesibilitas.

Struktur Repositori: 12 Divisi, 147 Agen

The Agency tersedia di github.com/msitarzewski/agency-agents. Agen dibagi ke 12 divisi yang meniru struktur agensi nyata:

agency-agents/
├── engineering/          # Frontend, Backend, DevOps, AI, Mobile, Security
├── design/               # UI Designer, UX Researcher, Brand Guardian, Whimsy Injector
├── marketing/            # Growth Hacker, SEO, TikTok, Reddit, LinkedIn
├── sales/                # Discovery Coach, Deal Strategist, Sales Engineer
├── product/              # Product Manager, Trend Researcher, Feedback Synthesizer
├── project-management/   # Studio Producer, Project Shepherd, Experiment Tracker
├── testing/              # Reality Checker, Evidence Collector, API Tester
├── support/              # Support Responder, Analytics Reporter, Legal Compliance
├── spatial-computing/    # XR Architect, visionOS Engineer, Metal Developer
├── specialized/          # MCP Builder, Blockchain Auditor, Compliance Auditor
├── game-development/     # Unity Architect, Unreal Systems, Godot Scripter, Roblox
└── academic/             # Anthropologist, Historian, Psychologist, Narratologist
Enter fullscreen mode Exit fullscreen mode

Setiap divisi berisi agen dengan keahlian spesifik. Misal, divisi Engineering mencakup Frontend Developer, Backend Architect, DevOps Automator, Security Engineer, hingga Embedded Firmware Engineer.

Anatomi Agen: Di Balik 400 Baris Spesialis AI

Setiap agen memiliki struktur berikut. Contoh: Backend Architect.

Frontmatter (YAML)

---
name: Backend Architect
description: Senior backend architect specializing in scalable system design, database architecture, API development, and cloud infrastructure
color: blue
emoji: 🏗️
vibe: Designs the systems that hold everything up — databases, APIs, cloud, scale.
---
Enter fullscreen mode Exit fullscreen mode

Metadata ini dipakai alat seperti Cursor & Claude Code untuk penemuan dan identifikasi visual.

Identitas & Memori

## đź§  Identitas & Memori Anda
- **Peran**: Spesialis arsitektur sistem dan pengembangan sisi server
- **Kepribadian**: Strategis, fokus keamanan, orientasi skalabilitas, terobsesi keandalan
- **Memori**: Mengingat pola arsitektur sukses, optimasi performa, framework keamanan
- **Pengalaman**: Pernah melihat sistem sukses dengan arsitektur tepat & gagal karena shortcut teknis
Enter fullscreen mode Exit fullscreen mode

Menetapkan persona dan keahlian khusus, bukan sekedar pelengkap.

Misi Inti

## 🎯 Misi Inti Anda

### Keunggulan Rekayasa Data/Skema
- Mendefinisikan & memelihara skema data, indeks
- Merancang struktur data efisien untuk dataset besar (100rb+ entitas)
- Menerapkan pipeline ETL untuk transformasi & unifikasi data
- Lapisan persistensi high-performance dengan query < 20ms
Enter fullscreen mode Exit fullscreen mode

Target misi selalu terukur, misal “waktu query < 20ms” atau “100rb+ entitas”.

Aturan Kritis

## 🚨 Aturan Kritis yang Harus Anda Ikuti

### Arsitektur Berfokus Keamanan
- Strategi pertahanan berlapis di semua lapisan sistem
- Hak istimewa minimum untuk semua layanan & DB access
- Enkripsi data saat istirahat & transfer sesuai standar terbaru
Enter fullscreen mode Exit fullscreen mode

Aturan adalah batasan tegas yang override perilaku LLM umum.

Hasil Teknis yang Dapat Disampaikan

Agen memberikan kode siap pakai:

-- Skema DB E-commerce
CREATE TABLE users (
    id UUID PRIMARY KEY DEFAULT gen_random_uuid(),
    email VARCHAR(255) UNIQUE NOT NULL,
    password_hash VARCHAR(255) NOT NULL,
    created_at TIMESTAMP WITH TIME ZONE DEFAULT NOW(),
    updated_at TIMESTAMP WITH TIME ZONE DEFAULT NOW(),
    deleted_at TIMESTAMP WITH TIME ZONE NULL
);

CREATE INDEX idx_users_email ON users(email) WHERE deleted_at IS NULL;
CREATE INDEX idx_users_created_at ON users(created_at);
Enter fullscreen mode Exit fullscreen mode
// API Express.js dengan middleware keamanan
const helmet = require('helmet');
const rateLimit = require('express-rate-limit');

const limiter = rateLimit({
  windowMs: 15 * 60 * 1000,
  max: 100,
  message: 'Terlalu banyak permintaan dari IP ini, silakan coba lagi nanti.',
});
Enter fullscreen mode Exit fullscreen mode

Metrik Keberhasilan

## 🎯 Metrik Keberhasilan Anda

Anda berhasil ketika:
- Waktu respons API < 200ms (P95)
- Uptime sistem > 99.9%
- Query DB < 100ms rata-rata
- Audit keamanan bebas kerentanan kritis
Enter fullscreen mode Exit fullscreen mode

Setiap agen punya kriteria sukses yang jelas dan terukur.

Integrasi Multi-Alat: Satu Agen, 10 IDE

The Agency langsung kompatibel dengan lebih dari 10 alat AI coding. Berikut ringkasan integrasi:

Alat Format Lokasi Pemasangan
Claude Code .md ~/.claude/agents/
GitHub Copilot .md ~/.github/agents/
Cursor .mdc .cursor/rules/
Aider CONVENTIONS.md Akar Proyek
Windsurf .windsurfrules Akar Proyek
Antigravity SKILL.md ~/.gemini/antigravity/skills/
Gemini CLI Ekstensi ~/.gemini/extensions/
OpenCode .md .opencode/agents/
OpenClaw SOUL.md, AGENTS.md ~/.openclaw/
Qwen Code .md ~/.qwen/agents/

Script Konversi (convert.sh)

Script bash scripts/convert.sh mengubah file .md ke format tiap alat:

#!/usr/bin/env bash
# convert.sh — Ubah file .md agen menjadi format spesifik alat

set -euo pipefail

AGENT_DIRS=(academic design engineering ...)

get_field() { ... }
get_body() { ... }

convert_cursor() {
  local agent_file="$1"
  local slug=$(to_kebab "$(get_field 'name' "$agent_file")")
  local output_file="$OUT_DIR/cursor/.cursor/rules/agency-${slug}.mdc"

  cat > "$output_file" << EOF
---
description: Agen agensi: $(get_field 'description' "$agent_file")
---
$(get_body "$agent_file")
EOF
}
Enter fullscreen mode Exit fullscreen mode

Agen untuk Aider dan Windsurf dikompilasi jadi satu file:

convert_aider() {
  local output="$OUT_DIR/aider/CONVENTIONS.md"
  echo "# Agen Agensi untuk Aider" > "$output"
  echo "" >> "$output"

  for dir in "${AGENT_DIRS[@]}"; do
    for file in "$REPO_ROOT/$dir"/*.md; do
      echo "---" >> "$output"
      cat "$file" >> "$output"
    done
  done
}
Enter fullscreen mode Exit fullscreen mode

Script Instalasi (install.sh)

Setelah konversi, install.sh menyalin hasil ke direktori alat target:

#!/usr/bin/env bash
# install.sh — Instal agen The Agency ke alat lokal

install_claude_code() {
  local src="$REPO_ROOT"
  local dest="$HOME/.claude/agents"
  mkdir -p "$dest"
  cp -r "$src"/{engineering,design,marketing,sales,specialized}/*.md "$dest/"
  ok "Claude Code: $(find "$dest" -name '*.md' | wc -l) agen terinstal"
}

install_cursor() {
  local src="$OUT_DIR/cursor/.cursor/rules"
  local dest="./.cursor/rules"
  mkdir -p "$dest"
  cp "$src"/*.mdc "$dest/"
  ok "Cursor: $(find "$dest" -name '*.mdc' | wc -l) aturan terinstal"
}
Enter fullscreen mode Exit fullscreen mode

Script mendukung mode interaktif serta eksekusi paralel:

./scripts/install.sh --parallel --jobs 8
Enter fullscreen mode Exit fullscreen mode

Memori MCP: Konteks Persisten Lintas Sesi

Agen AI biasa lupa konteks setiap sesi. Dengan MCP (Model Context Protocol), agen bisa:

  • Mengingat keputusan lintas sesi
  • Melakukan serah terima antar agen
  • Rollback jika QA gagal

Pola Memori MCP

Tambahkan bagian berikut pada agen untuk mengaktifkan MCP:

## Integrasi Memori

Saat sesi mulai:
- Recall konteks relevan dari sesi sebelumnya berdasarkan peran/proyek
- Tinjau memori tertag nama agen anda

Saat mengambil keputusan penting:
- Simpan keputusan dengan tag deskriptif
- Sertakan cukup konteks untuk sesi berikutnya

Saat serah terima ke agen lain:
- Simpan hasil dengan tag penerima
- Sertakan: apa yang selesai, tertunda, dan perlu diketahui agen berikutnya
Enter fullscreen mode Exit fullscreen mode

Alat MCP

Alat Fungsi
remember Menyimpan keputusan/konteks dengan tag
recall Cari memori berdasarkan kata kunci/tag
rollback Kembali ke state sebelumnya
search Cari memori spesifik lintas sesi/agen

Contoh Workflow Memori

Tanpa memori MCP:

Pengguna: "Buat API"
Agen: [Buat API, sesi berakhir]

[Sesi baru]
Pengguna: "Lanjutkan dari kemarin"
Agen: "Tidak punya konteks sesi sebelumnya. Mohon tempelkan detail."
Enter fullscreen mode Exit fullscreen mode

Dengan MCP:

Pengguna: "Buat API"
Agen: [Buat API, save context: API E-commerce, JWT, rate-limit]

[Sesi baru]
Pengguna: "Lanjutkan dari kemarin"
Agen: [Recall: "Kemarin buat tabel user dengan UUID, JWT otentikasi, rate limit 100/15mnt. Next: skema layanan pemesanan."]
Enter fullscreen mode Exit fullscreen mode

Lihat integrations/mcp-memory/backend-architect-with-memory.md untuk contoh lengkap.

Agen Unggulan: 3 Studi Kasus

1. Reality Checker (Divisi Pengujian)

Reality Checker = default “PERLU PERBAIKAN” sampai terbukti benar.

# Langkah 1: Cek realitas (WAJIB)
ls -la resources/views/ || ls -la *.html
grep -r "luxury\|premium\|glass\|morphism" . --include="*.html" --include="*.css" || echo "TIDAK ADA FITUR PREMIUM DITEMUKAN"
./qa-playwright-capture.sh http://localhost:8000 public/qa-screenshots
Enter fullscreen mode Exit fullscreen mode

Langkah 2: Validasi silang QA

  • Tinjau hasil QA headless Chrome
  • Periksa screenshot otomatis
  • Konfirmasi/tantang hasil QA pakai bukti

Langkah 3: Validasi end-to-end

  • Analisa responsive-desktop.png, tablet, mobile
  • Urutkan nav--click.png, form-.png
  • Tinjau data performa aktual

Agen ini butuh bukti visual sebelum menyetujui. Tidak ada lagi “Kelihatannya bagus!” tanpa data.


2. Whimsy Injector (Divisi Desain)

Whimsy Injector menambah persona tanpa mengorbankan usability.

/* Interaksi Tombol Menarik */
.btn-whimsy {
  position: relative;
  overflow: hidden;
  transition: all 0.3s cubic-bezier(0.23, 1, 0.32, 1);

  &::before {
    content: '';
    position: absolute;
    top: 0; left: -100%; width: 100%; height: 100%;
    background: linear-gradient(90deg, transparent, rgba(255,255,255,0.2), transparent);
    transition: left 0.5s;
  }

  &:hover {
    transform: translateY(-2px) scale(1.02);
    box-shadow: 0 8px 25px rgba(0,0,0,0.15);
  }
}
Enter fullscreen mode Exit fullscreen mode
// Sistem Prestasi Whimsy
class WhimsyAchievements {
  unlock(achievementId) {
    const achievement = this.achievements[achievementId];
    this.showCelebration(achievement);
    this.saveProgress(achievementId);
  }

  showCelebration(achievement) {
    const celebration = document.createElement('div');
    celebration.className = `achievement-celebration ${achievement.celebration}`;
    celebration.innerHTML = `
      <div class="achievement-card">
        <div class="achievement-icon">${achievement.icon}</div>
        <h3>${achievement.title}</h3>
        <p>${achievement.description}</p>
      </div>
    `;
    document.body.appendChild(celebration);
    setTimeout(() => celebration.remove(), 3000);
  }
}
Enter fullscreen mode Exit fullscreen mode

Microcopy:

## Pesan Error
**404**: "Ups! Halaman ini pergi berlibur tanpa memberi tahu kami."
**Validasi Email**: "Email Anda terlihat sedikit malu – tambahkan simbol @?"
**Kesalahan Jaringan**: "Sepertinya internet terhenti sebentar. Coba lagi?"
Enter fullscreen mode Exit fullscreen mode

3. MCP Builder (Divisi Khusus)

MCP Builder membangun alat kustom untuk memperluas kemampuan agen AI.

// Server MCP TypeScript
import { McpServer } from "@modelcontextprotocol/sdk/server/mcp.js";
import { StdioServerTransport } from "@modelcontextprotocol/sdk/server/stdio.js";
import { z } from "zod";

const server = new McpServer({ name: "my-server", version: "1.0.0" });

server.tool("search_items", { query: z.string(), limit: z.number().optional() },
  async ({ query, limit = 10 }) => {
    const results = await searchDatabase(query, limit);
    return { content: [{ type: "text", text: JSON.stringify(results, null, 2) }] };
  }
);

const transport = new StdioServerTransport();
await server.connect(transport);
Enter fullscreen mode Exit fullscreen mode

Aturan kritis:

  • Nama alat deskriptif: search_users lebih baik dari query1
  • Parameter bertipe (Zod): Input tervalidasi, default untuk opsional
  • Output terstruktur: JSON untuk data, markdown untuk konten manusia
  • Error handling baik: Kembalikan pesan error, jangan crash

Komunitas & Terjemahan

The Agency berkembang dari thread Reddit ke:

  • 147 agen di 12 divisi
  • 10.000+ baris kode/kepribadian/proses
  • Terjemahan komunitas: Mandarin Sederhana (dua fork), lebih banyak menyusul
  • Dukungan multi-alat: 10+ integrasi via script

Fork utama:

  • agency-agents-zh oleh @jnMetaCode (100 agen + 9 orisinil Tiongkok)
  • agent-teams oleh @dsclca12 (lokalisasi Bilibili, WeChat, Xiaohongshu)

Instalasi: Mulai Cepat

Opsi 1: Claude Code (Direkomendasikan)

# Salin agen ke direktori Claude Code Anda
cp -r agency-agents/* ~/.claude/agents/

# Aktifkan di sesi mana pun:
"Hai Claude, aktifkan mode Pengembang Frontend dan bantu saya membangun komponen React"
Enter fullscreen mode Exit fullscreen mode

Opsi 2: Instalasi Multi-Alat

# 1. Hasilkan file integrasi
./scripts/convert.sh

# 2. Instal interaktif (deteksi alat otomatis)
./scripts/install.sh

# Atau instal alat spesifik:
./scripts/install.sh --tool cursor
./scripts/install.sh --tool aider
Enter fullscreen mode Exit fullscreen mode

Opsi 3: Referensi Manual

Jelajahi agency-agents dan modifikasi agen sesuai kebutuhan. Setiap file berisi identitas, workflow, hasil, dan kode.

Apa yang Membuat Ini Berbeda?

vs. Prompt AI Generik

Prompt Generik The Agency
“Bertindaklah sebagai pengembang” “Aktifkan mode Pengembang Frontend”
Umum, multi-tujuan Spesialisasi domain mendalam
Tidak ada struktur hasil Contoh kode/flow lengkap
Tidak ada metrik keberhasilan Hasil terukur jelas

vs. Pustaka Prompt

Pustaka Prompt The Agency
Kumpulan prompt statis Sistem agen komprehensif
Teks sekali pakai Kepribadian + workflow + memori
Tidak terintegrasi 10+ alat, auto-konversi

vs. Alat AI

Alat AI The Agency
Kotak hitam, tidak bisa diubah Transparan, bisa fork/adaptasi
Vendor lock-in MIT, dikelola komunitas
Model tunggal Bisa dengan LLM apa pun via MCP

Poin Penting Teknis

  1. Spesialisasi lebih baik dari generalisasi: 147 spesialis > 1 prompt serba bisa
  2. Struktur menghasilkan output: Frontmatter + Identitas + Misi + Aturan + Hasil + Metrik
  3. Integrasi otomatis: Bash script mengubah agen ke 10+ format
  4. Memori = kesinambungan: MCP mengatasi “saya lupa kemarin”
  5. Skala komunitas: Reddit thread → 147 agen → multi-bahasa → multi-alat

Langkah Selanjutnya

Ingin mencoba The Agency?

  1. Cek daftar agen lengkap
  2. Instal ke alat favorit Anda (Claude Code, Cursor, Aider, dst)
  3. Aktifkan spesialis: “Gunakan Reality Checker untuk verifikasi produksi”
  4. Kontribusi: tambah agen, tingkatkan, share use-case

Mau bikin agen AI sendiri?

Gunakan: frontmatter untuk discovery, identitas untuk persona, misi untuk scope, aturan untuk constraints, hasil untuk output, metrik untuk akuntabilitas.

The Agency membuktikan: spesialisasi bukan hanya urusan manusia. Seringkali, tim AI terbaik adalah 147 spesialis yang tahu tugasnya—bukan satu model yang berusaha lakukan segalanya.

Top comments (0)