Hacktoberfest 2026: le issue che i maintainer hanno segnato per ottobre, aperte e adatte ai principianti. Sfoglia le issue Hacktoberfest

Proposal: global `search` command across conversations, contacts, messages, and articles

Aperta
#22 2 commenti 0 reazioni 0 assegnatari Vedi su GitHub

Nessuno ha ancora preso questa issue.

Valutazione

Difficoltà
5/5
Tempo stimato
Più di una settimana
Idoneità per principianti
35/100
Tipo di issue
Funzionalità
Chiarezza
Da chiarire
Stato di attività
Attiva
Stack tecnologico
go
Ambito
api, cli

Direzione di ricerca

Inizia esaminando i comandi di ricerca esistenti per risorsa e internal/cmd/*_test.go, quindi ispeziona l’endpoint di ricerca della dashboard e internal/sdk/testdata/application_swagger.json. Determina se /search è una superficie API supportata e se, prima dell’implementazione, debba essere un comando di primo livello o un flag. Il lavoro è completato quando la direzione è concordata e il comando tra risorse è coperto da test basati su httptest.

Scritto dal modello di indicizzazione a partire dal testo della issue.

Descrizione

Summary

I'd like to add a top-level chatwoot search "<query>" command that returns matches across conversations, contacts, messages, and help-center articles in one call, with --only=<bucket> to restrict the output. This complements the existing per-resource search (contacts --search, convs --query) with a single cross-resource entry point.

Endpoint

It would call the account-scoped dashboard search endpoint:

GET /api/v1/accounts/{account_id}/search          # all four buckets

This is what the Chatwoot dashboard's global search uses (Api::V1::Accounts::SearchController). Two questions before I open the PR:

  1. Is /search a supported API surface for the CLI to depend on? It isn't in the published OpenAPI spec (internal/sdk/testdata/application_swagger.json only lists /contacts/search), so I'd cover it with httptest-based tests rather than the swagger contract harness — matching the existing internal/cmd/*_test.go. Happy to add the path to the bundled spec instead if you'd prefer to treat it as official.
  2. Top-level command vs. flag? A new top-level search reads naturally for cross-bucket search, but it overlaps conceptually with contacts --search / convs --query. Would you prefer a top-level command, or a different shape?

Follow-up (separate PR)

A second, optional PR adds date-range filtering (--after / --before / --on, --tz) mapping to since / until query params on /search. Heads-up: those params are also dashboard-internal (not in the published spec) and only take effect when the account has the advanced_search feature — so it's cleanly separable and easy to defer.

Both PRs are ready to open once you confirm the direction. Thanks!

Lingua principale
Go
Stelle
9
Fork
5
Merge medio
2m
PR unite (30g)
2

Preparare l'ambiente

Questo progetto non fornisce container di sviluppo, Dockerfile né guida per i contributori, quindi l'ambiente è a tuo carico: parti dal suo README e consulta la nostra guida al primo contributo per i passaggi generali.

Come iniziare

  1. Leggi tutta la issue e poi la guida ai contributi del progetto.
  2. Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
  3. Fai un fork del repository e lavora su un branch.
  4. Apri una pull request che faccia riferimento al numero della issue.

Altre issue di chatwoot/cli

Tutte le issue di chatwoot/cli

Issue simili

Altre issue su Go

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.