Skill Store 33

Glean Core Workflow A

Execute Glean primary workflow: search, chat, and AI-powered answers across enterprise data.

by jeremylongshore · MIT

The skill

Execute Glean primary workflow: search, chat, and AI-powered answers across enterprise data. Use when building search integrations, implementing Glean chat, or creating AI assistants. Trigger: "glean search API", "glean chat", "glean AI answers", "enterprise search".

Glean Core Workflow A: Search & Chat

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

Error Cause Solution
Empty results Query too specific or datasource not indexed Broaden query, check datasource status
Chat returns no citations Content not indexed for chat Verify documents have body text
403 on search User permissions Ensure 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.

Use this skill

Connect your agent to the Skill Store MCP server and ask for it by ref: jeremylongshore/glean-core-workflow-a-24363388643.

Download SKILL.md · Markdown version

Details

Publisher
jeremylongshore
Category
Data & Analytics › Misc
License
MIT
Updated
2026-10-19

References

More from jeremylongshore