Glean Core Workflow A: Search & Chat

SkillSearch

'Execute Glean primary workflow: search, chat, and AI-powered answers

Use Glean Core Workflow A: Search & Chat in Claude, ChatGPT or Ahel Desktop

Free. Sign in, add Glean Core Workflow A: Search & Chat and connect your AI. About a minute.

Also: Claude Code · Cursor · Codex

Then ask your AI: use the Glean Core Workflow A: Search & Chat skill

Details

Instructions available. Your AI can read the instructions. Execution depends on the setup they require.

Add Ahel to your AI once: Claude, ChatGPT, Cursor, Claude Code or Codex. Then ask it to use this.

Glean Core Workflow A: Search & ChatStart free

What this skill tells your AI

The instructions your AI receives, as published by jeremylongshore/tons-of-skills-marketplace in skills/.curated/glean-core-workflow-a/SKILL.md and read by Ahel’s review.

Overview

Build search and chat experiences using the Glean Client API. Covers full-text search with filters, AI-powered chat answers, and autocomplete suggestions.

Prerequisites

  • A scoped search identity, approved datasource filter, and synthetic terms that cannot retrieve company-sensitive material.
  • User-consent and retention policy for any analytics, chat history, or feedback capture.
  • A rollback path that disables the client or filter without changing source documents or connector ACLs.

Instructions

Step 1: Search with Filters and Facets

const results = await fetch(`${GLEAN}/client/v1/search`, {
  method: 'POST', headers: searchHeaders,
  body: JSON.stringify({
    query: 'kubernetes deployment best practices',
    pageSize: 20,
    requestOptions: {
      datasourceFilter: 'confluence,github',
      facetFilters: [{ fieldName: 'author', values: ['engineering-team'] }],
    },
  }),
}).then(r => r.json());

results.results?.forEach((r: any) => {
  console.log(`[${r.datasource}] ${r.title}`);
  console.log(`  ${r.snippets?.[0]?.snippet ?? ''}`);
});

Step 2: AI Chat (Glean Assistant)

const chatResponse = await fetch(`${GLEAN}/client/v1/chat`, {
  method: 'POST', headers: searchHeaders,
  body: JSON.stringify({
    messages: [{ role: 'USER', content: 'What is our deployment process for production?' }],
    applicationId: 'my-app',
  }),
}).then(r => r.json());

console.log('Answer:', chatResponse.messages?.[0]?.content);
console.log('Sources:', chatResponse.citations?.map((c: any) => c.title).join(', '));

Step 3: Autocomplete / Suggestions

const suggestions = await fetch(`${GLEAN}/client/v1/autocomplete`, {
  method: 'POST', headers: searchHeaders,
  body: JSON.stringify({ query: 'deploy', datasourceFilter: 'confluence' }),
}).then(r => r.json());

suggestions.results?.forEach((s: any) => console.log(`  ${s.text}`));

Error Handling

ErrorCauseSolution
Empty resultsQuery too specific or datasource not indexedBroaden query, check datasource status
Chat returns no citationsContent not indexed for chatVerify documents have body text
403 on searchUser permissionsEnsure token has search scope

Output

Return a redacted workflow receipt containing datasource scope, correlation ID, result-count band, allow/deny outcomes, and fallback used. Never record query text, titles, snippets, transcripts, or credentials.

Examples

Run a fictional query against sandbox-handbook, verify one authorized identity sees the sample while a denied identity sees none, and record scope=sandbox-handbook; allow=1; deny=0; fallback=none.

Resources

Next Steps

For bulk indexing workflow, see glean-core-workflow-b.

Signals

GitHub stars
3k
Forks
415
Last commit
Oct 2026
Advanced
Item type
skill
Key
glean-core-workflow-a
Source
github.com/jeremylongshore/tons-of-skills-marketplace