Files
keyhunter/.planning/phases/03-tier-3-9-providers/03-07-PLAN.md
2026-04-05 14:39:54 +03:00

12 KiB

phase, plan, type, wave, depends_on, files_modified, autonomous, requirements, must_haves
phase plan type wave depends_on files_modified autonomous requirements must_haves
03-tier-3-9-providers 07 execute 1
providers/reka.yaml
providers/aleph-alpha.yaml
providers/writer.yaml
providers/jasper.yaml
providers/typeface.yaml
providers/comet.yaml
providers/wandb.yaml
providers/langsmith.yaml
providers/pinecone.yaml
providers/weaviate.yaml
providers/qdrant.yaml
providers/chroma.yaml
providers/milvus.yaml
providers/neon.yaml
providers/lamini.yaml
pkg/providers/definitions/reka.yaml
pkg/providers/definitions/aleph-alpha.yaml
pkg/providers/definitions/writer.yaml
pkg/providers/definitions/jasper.yaml
pkg/providers/definitions/typeface.yaml
pkg/providers/definitions/comet.yaml
pkg/providers/definitions/wandb.yaml
pkg/providers/definitions/langsmith.yaml
pkg/providers/definitions/pinecone.yaml
pkg/providers/definitions/weaviate.yaml
pkg/providers/definitions/qdrant.yaml
pkg/providers/definitions/chroma.yaml
pkg/providers/definitions/milvus.yaml
pkg/providers/definitions/neon.yaml
pkg/providers/definitions/lamini.yaml
true
PROV-06
truths artifacts key_links
15 Tier 6 Emerging/Niche provider YAMLs load
W&B uses documented 40-hex key; LangSmith uses lsv2_ prefix; Pinecone uses pcsk_ prefix
Vector DBs and writing tools have strong env var keyword anchors
path provides contains
providers/langsmith.yaml LangSmith lsv2_ prefix pattern lsv2_
path provides contains
providers/pinecone.yaml Pinecone pcsk_ prefix pattern pcsk_
path provides contains
providers/wandb.yaml Weights & Biases 40-hex key pattern WANDB_API_KEY
from to via pattern
provider keywords[] Registry Aho-Corasick automaton NewRegistry() keywords
Create 15 Tier 6 Emerging/Niche provider YAMLs — emerging LLM labs (Reka, Aleph Alpha, Lamini), writing tools (Writer, Jasper, Typeface), observability (Comet, W&B, LangSmith), and vector DBs (Pinecone, Weaviate, Qdrant, Chroma, Milvus, Neon).

Purpose: Satisfy PROV-06 (15 Tier 6 Emerging/Niche providers).

Output: 30 YAML files.

Addresses PROV-06.

<execution_context> @$HOME/.claude/get-shit-done/workflows/execute-plan.md @$HOME/.claude/get-shit-done/templates/summary.md </execution_context>

@.planning/ROADMAP.md @.planning/phases/03-tier-3-9-providers/03-CONTEXT.md @pkg/providers/schema.go Dual-location required. Several providers in this group have documented prefixes (LangSmith lsv2_, Pinecone pcsk_, W&B 40-hex). Others use keyword-only. Task 1: Emerging labs + writing tools (Reka, Aleph Alpha, Lamini, Writer, Jasper, Typeface, Comet, W&B) providers/reka.yaml, providers/aleph-alpha.yaml, providers/lamini.yaml, providers/writer.yaml, providers/jasper.yaml, providers/typeface.yaml, providers/comet.yaml, providers/wandb.yaml, pkg/providers/definitions/reka.yaml, pkg/providers/definitions/aleph-alpha.yaml, pkg/providers/definitions/lamini.yaml, pkg/providers/definitions/writer.yaml, pkg/providers/definitions/jasper.yaml, pkg/providers/definitions/typeface.yaml, pkg/providers/definitions/comet.yaml, pkg/providers/definitions/wandb.yaml - pkg/providers/schema.go providers/reka.yaml:
format_version: 1
name: reka
display_name: Reka AI
tier: 6
last_verified: "2026-04-05"
keywords:
  - "reka"
  - "REKA_API_KEY"
  - "api.reka.ai"
  - "reka-core"
  - "reka-flash"
verify:
  method: GET
  url: https://api.reka.ai/v1/models
  headers:
    X-Api-Key: "{KEY}"
  valid_status: [200]
  invalid_status: [401, 403]

providers/aleph-alpha.yaml:

format_version: 1
name: aleph-alpha
display_name: Aleph Alpha
tier: 6
last_verified: "2026-04-05"
keywords:
  - "aleph-alpha"
  - "aleph_alpha"
  - "ALEPH_ALPHA_API_KEY"
  - "AA_TOKEN"
  - "api.aleph-alpha.com"
  - "luminous"
verify:
  method: GET
  url: https://api.aleph-alpha.com/models_available
  headers:
    Authorization: "Bearer {KEY}"
  valid_status: [200]
  invalid_status: [401, 403]

providers/lamini.yaml:

format_version: 1
name: lamini
display_name: Lamini
tier: 6
last_verified: "2026-04-05"
keywords:
  - "lamini"
  - "LAMINI_API_KEY"
  - "api.lamini.ai"
  - "lamini.ai"
verify:
  method: GET
  url: https://api.lamini.ai/v1/models
  headers:
    Authorization: "Bearer {KEY}"
  valid_status: [200]
  invalid_status: [401, 403]

providers/writer.yaml:

format_version: 1
name: writer
display_name: Writer
tier: 6
last_verified: "2026-04-05"
keywords:
  - "writer.com"
  - "WRITER_API_KEY"
  - "api.writer.com"
  - "palmyra"
verify:
  method: GET
  url: https://api.writer.com/v1/models
  headers:
    Authorization: "Bearer {KEY}"
  valid_status: [200]
  invalid_status: [401, 403]

providers/jasper.yaml:

format_version: 1
name: jasper
display_name: Jasper AI
tier: 6
last_verified: "2026-04-05"
keywords:
  - "jasper.ai"
  - "JASPER_API_KEY"
  - "api.jasper.ai"
  - "jasper-ai"
verify:
  method: GET
  url: ""
  headers: {}
  valid_status: []
  invalid_status: []

providers/typeface.yaml:

format_version: 1
name: typeface
display_name: Typeface
tier: 6
last_verified: "2026-04-05"
keywords:
  - "typeface"
  - "typeface.ai"
  - "TYPEFACE_API_KEY"
  - "typeface-app"
verify:
  method: GET
  url: ""
  headers: {}
  valid_status: []
  invalid_status: []

providers/comet.yaml:

format_version: 1
name: comet
display_name: Comet ML / Opik
tier: 6
last_verified: "2026-04-05"
keywords:
  - "comet_ml"
  - "comet-ml"
  - "COMET_API_KEY"
  - "COMET_WORKSPACE"
  - "opik"
  - "comet.com"
verify:
  method: GET
  url: https://www.comet.com/api/rest/v2/workspaces
  headers:
    Authorization: "{KEY}"
  valid_status: [200]
  invalid_status: [401, 403]

providers/wandb.yaml:

format_version: 1
name: wandb
display_name: Weights & Biases
tier: 6
last_verified: "2026-04-05"
keywords:
  - "wandb"
  - "weights_and_biases"
  - "WANDB_API_KEY"
  - "api.wandb.ai"
  - "wandb.ai"
patterns:
  - regex: '[a-f0-9]{40}'
    entropy_min: 3.5
    confidence: low
verify:
  method: GET
  url: https://api.wandb.ai/graphql
  headers:
    Authorization: "Basic {KEY}"
  valid_status: [200, 400]
  invalid_status: [401, 403]

Copy all 8 files verbatim to pkg/providers/definitions/. cd /home/salva/Documents/apikey && for f in reka aleph-alpha lamini writer jasper typeface comet wandb; do diff providers/$f.yaml pkg/providers/definitions/$f.yaml || exit 1; done && go test ./pkg/providers/... -count=1 && go test ./pkg/engine/... -count=1 <acceptance_criteria> - All 16 files exist - grep -q 'luminous' providers/aleph-alpha.yaml - grep -q 'palmyra' providers/writer.yaml - grep -q 'WANDB_API_KEY' providers/wandb.yaml - go test ./pkg/providers/... -count=1 passes </acceptance_criteria> 8 emerging/writing/observability providers dual-located.

Task 2: LangSmith + vector DBs (LangSmith, Pinecone, Weaviate, Qdrant, Chroma, Milvus, Neon) providers/langsmith.yaml, providers/pinecone.yaml, providers/weaviate.yaml, providers/qdrant.yaml, providers/chroma.yaml, providers/milvus.yaml, providers/neon.yaml, pkg/providers/definitions/langsmith.yaml, pkg/providers/definitions/pinecone.yaml, pkg/providers/definitions/weaviate.yaml, pkg/providers/definitions/qdrant.yaml, pkg/providers/definitions/chroma.yaml, pkg/providers/definitions/milvus.yaml, pkg/providers/definitions/neon.yaml - pkg/providers/schema.go providers/langsmith.yaml:
format_version: 1
name: langsmith
display_name: LangSmith (LangChain)
tier: 6
last_verified: "2026-04-05"
keywords:
  - "langsmith"
  - "langchain"
  - "LANGCHAIN_API_KEY"
  - "LANGSMITH_API_KEY"
  - "LANGCHAIN_TRACING_V2"
  - "api.smith.langchain.com"
  - "lsv2_"
patterns:
  - regex: 'lsv2_(pt|sk)_[a-f0-9]{32}_[a-f0-9]{10}'
    entropy_min: 4.0
    confidence: high
verify:
  method: GET
  url: https://api.smith.langchain.com/info
  headers:
    X-API-Key: "{KEY}"
  valid_status: [200]
  invalid_status: [401, 403]

providers/pinecone.yaml:

format_version: 1
name: pinecone
display_name: Pinecone
tier: 6
last_verified: "2026-04-05"
keywords:
  - "pinecone"
  - "PINECONE_API_KEY"
  - "PINECONE_ENVIRONMENT"
  - "api.pinecone.io"
  - "pinecone.io"
  - "pcsk_"
patterns:
  - regex: 'pcsk_[A-Za-z0-9]{40,}'
    entropy_min: 4.0
    confidence: high
verify:
  method: GET
  url: https://api.pinecone.io/indexes
  headers:
    Api-Key: "{KEY}"
  valid_status: [200]
  invalid_status: [401, 403]

providers/weaviate.yaml:

format_version: 1
name: weaviate
display_name: Weaviate
tier: 6
last_verified: "2026-04-05"
keywords:
  - "weaviate"
  - "WEAVIATE_API_KEY"
  - "WEAVIATE_URL"
  - "weaviate.io"
  - "wcs.api"
verify:
  method: GET
  url: ""
  headers: {}
  valid_status: []
  invalid_status: []

providers/qdrant.yaml:

format_version: 1
name: qdrant
display_name: Qdrant
tier: 6
last_verified: "2026-04-05"
keywords:
  - "qdrant"
  - "QDRANT_API_KEY"
  - "QDRANT_URL"
  - "qdrant.tech"
  - "cloud.qdrant.io"
verify:
  method: GET
  url: ""
  headers: {}
  valid_status: []
  invalid_status: []

providers/chroma.yaml:

format_version: 1
name: chroma
display_name: Chroma
tier: 6
last_verified: "2026-04-05"
keywords:
  - "chromadb"
  - "chroma-client"
  - "CHROMA_API_KEY"
  - "CHROMA_HOST"
  - "trychroma.com"
verify:
  method: GET
  url: ""
  headers: {}
  valid_status: []
  invalid_status: []

providers/milvus.yaml:

format_version: 1
name: milvus
display_name: Milvus / Zilliz
tier: 6
last_verified: "2026-04-05"
keywords:
  - "milvus"
  - "zilliz"
  - "ZILLIZ_API_KEY"
  - "MILVUS_TOKEN"
  - "zilliz.com"
  - "api.cloud.zilliz.com"
verify:
  method: GET
  url: ""
  headers: {}
  valid_status: []
  invalid_status: []

providers/neon.yaml:

format_version: 1
name: neon
display_name: Neon (Serverless Postgres + pgvector)
tier: 6
last_verified: "2026-04-05"
keywords:
  - "neon-db"
  - "neondb"
  - "NEON_API_KEY"
  - "NEON_CONNECTION_STRING"
  - "console.neon.tech"
  - "pg.neon.tech"
verify:
  method: GET
  url: https://console.neon.tech/api/v2/projects
  headers:
    Authorization: "Bearer {KEY}"
  valid_status: [200]
  invalid_status: [401, 403]

Copy all 7 files verbatim to pkg/providers/definitions/. cd /home/salva/Documents/apikey && for f in langsmith pinecone weaviate qdrant chroma milvus neon; do diff providers/$f.yaml pkg/providers/definitions/$f.yaml || exit 1; done && go test ./pkg/providers/... -count=1 && go test ./pkg/engine/... -count=1 && test $(grep -l 'tier: 6' providers/*.yaml | wc -l) -eq 15 <acceptance_criteria> - All 14 files exist - grep -q 'lsv2_' providers/langsmith.yaml - grep -q 'pcsk_' providers/pinecone.yaml - grep -q 'zilliz' providers/milvus.yaml - Total Tier 6 count = 15 - go test ./pkg/providers/... -count=1 passes - go test ./pkg/engine/... -count=1 passes </acceptance_criteria> All 15 Tier 6 emerging/niche providers dual-located. PROV-06 satisfied.

`grep -l 'tier: 6' providers/*.yaml | wc -l` returns 15.

<success_criteria>

  • 15 Tier 6 providers created
  • LangSmith lsv2_ and Pinecone pcsk_ use high-confidence regex
  • Vector DB env vars captured
  • No engine regression </success_criteria>
After completion, create `.planning/phases/03-tier-3-9-providers/03-07-SUMMARY.md`