acaba ai kendi arama agentını yapabilir mi

Claude Code'un Explore agentını engelleyip kendi attention-agent'ımı yaptım. TS-morph ile dosya yollarını buluyor, context kaybı yok.

Demo: Hook'un Explore'u engelleyip attention-agent'ı çağırışını izle (video Türkçe, workflow görülüyor):

1. Problem (bu sen misin?)

Claude Code'un Explore agentı yavaş ve yanlış yerlere bakıyor. "X nerede implement edilmiş?" dediğinde grep-based arama yapıyor, project graph anlamıyor, alakasız sonuçlar veriyor.

Explore ile sorunun yoksa → buradan çık.

2. Gereksinimler (bunları yapabilir misin?)

Denemeden önce:

  • Claude Code kullanıyor olmalısın (hook sistemi için)

  • TypeScript projesi (TS-morph için)

  • TS-morph kurulu (npm install ts-morph)

  • Hook yazmayı bilmeli (veya öğrenmeye açık)

Claude Code kullanmıyorsan → bu pattern çalışmaz.

Hook nedir bilmiyorsan → önce dokümantasyonu oku: https://docs.claude.com/en/docs/claude-code/hooks

3. Sonuç (çok teknik mi?)

Explore'u custom attention-agent ile değiştirdim.

Ne değişti:

  • Explore engellendi (PreToolUse hook)

  • Attention-agent devreye girdi

  • TS-morph script'leri → dosya yollarını buldu

  • Main agent yolları okudu

  • Context kaybı yok (10x hızlı)

"Çok teknik" diyorsan → bu senin için değil. Educational seeker'lar buradan çıkar.

Discovery explorer'lar okumaya devam eder.

4. Nasıl (hook + agent pattern)

Hook: Explore'u engelle

Claude Code'da .claude/hooks/ altında PreToolUse hook oluştur:

# PreToolUse Hook: Explore yerine attention-agent kullan

Ne zaman: Task tool subagent_type="Explore"
Aksiyon: Context inject et

"Explore kapalı. attention-agent + ts-morph kullan.

Workflow:
1. Sen (main) → attention-agent'a nereye bakacağını sor
2. Attention-agent → /tmp/attention-discover-{domain}-{keyword}-{uid}.ts yaz
3. Bun ile çalıştır
4. Sen (main) → yolları oku + karar ver

Sonuç: Context kaybı yok"

Hook dokümantasyonu: https://docs.claude.com/en/docs/claude-code/hooks

Agent: Dosya yollarını bul

.claude/agents/attention-agent.md oluştur:

---
name: attention-agent
description: Proje içinde dosya yollarını bulur (içerik değil)
tools: Write, Bash(bun)
model: haiku
---

# KURAL: Sadece yolları döndür

Protokol:
1. Task → domain keyword
2. /tmp/attention-discover-{domain}-{keyword}-{uid}.ts yaz
3. TS-morph: Imports, Importers, Exports, Identifiers
4. Bun ile çalıştır
5. Yolları döndür

Template:
```typescript
import { Project } from 'ts-morph'

const project = new Project({ tsConfigFilePath: './tsconfig.json' })
const keyword = 'KEYWORD'

const files = project.getSourceFiles()
  .filter(f => f.getFullText().includes(keyword))

console.log(JSON.stringify(
  files.map(f => ({
    path: f.getFilePath(),
    functions: f.getFunctions().map(fn => fn.getName()),
    imports: f.getImportDeclarations().map(i => i.getModuleSpecifierValue())
  })), null, 2
))

Workflow

Sen: "Telegram handler nerede?"

Main Agent: Explore kullanmayı deniyor

PreToolUse Hook: Explore'u engelliyor

Main Agent: attention-agent'ı çağırıyor

Attention-Agent:
  - /tmp/attention-discover-messaging-telegram-{uid}.ts yazar
  - Bun ile çalıştırır
  - Yolları döndürür

Main Agent: yolları okur → karar verir

5. Neden Önemli

Context preservation:

  • Worker dosyaları okursa → main agent unutur

  • Worker yolları döndürürse → main agent okur → hatırlar

Hız:

  • TS-morph → AST (compiler API)

  • Grep → regex (pattern matching)

  • 10x fark

Doğruluk:

  • Project graph → gerçek bağımlılıklar

  • String search → yanlış eşleşmeler

Dene

Kendin dene. Kendi attention-agent'ını yap. Hangi pattern'leri bulduğunu paylaş.

Son filtre: Buraya kadar geldiysen discovery explorer'sın. Educational seeker'lar çoktan çıktı.

Last updated

Was this helpful?