search-company-knowledge

作者: openai

搜索公司知识库(Confluence、Jira、内部文档),查找并解释内部概念、流程和技术细节。当代理…

npx skills add https://github.com/openai/plugins --skill search-company-knowledge

Search Company Knowledge

Keywords

find information, search company knowledge, look up, what is, explain, company docs, internal documentation, Confluence search, Jira search, our documentation, internal knowledge, knowledge base, search for, tell me about, get information about, company systems, terminology, find everything about, what do we know about, deployment, authentication, infrastructure, processes, procedures, how to, how does, our systems, our processes, internal systems, company processes, technical documentation, engineering docs, architecture, configuration, search our docs, search internal docs, find in our docs

Overview

Search across siloed company knowledge systems (Confluence, Jira, internal documentation) to find comprehensive answers to questions about internal concepts, systems, and terminology. This skill performs parallel searches across multiple sources and synthesizes results with proper citations.

Use this skill when: Users ask about internal company knowledge that might be documented in Confluence pages, Jira tickets, or internal documentation.


Workflow

Follow this 5-step process to provide comprehensive, well-cited answers:

Step 1: Identify Search Query

Extract the core search terms from the user's question.

Examples:

  • User: "Find everything about Stratus minions" → Search: "Stratus minions"
  • User: "What do we know about the billing system?" → Search: "billing system"
  • User: "Explain our deployment process" → Search: "deployment process"

Consider:

  • Main topic or concept
  • Any specific system/component names
  • Technical terms or jargon

Step 2: Execute Parallel Search

Search across all available knowledge sources simultaneously for comprehensive coverage.

Option A: Cross-System Search (Recommended First)

Use the search tool (Rovo Search) to search across Confluence and Jira at once:

search(
  cloudId="...",
  query="[extracted search terms]"
)

When to use:

  • Default approach for most queries
  • When you don't know which system has the information
  • Fastest way to get results from multiple sources

Example:

search(
  cloudId="...",
  query="Stratus minions"
)

This returns results from both Confluence pages and Jira issues.

Option B: Targeted Confluence Search

Use searchConfluenceUsingCql when specifically searching Confluence:

searchConfluenceUsingCql(
  cloudId="...",
  cql="text ~ 'search terms' OR title ~ 'search terms'"
)

When to use:

  • User specifically mentions "in Confluence" or "in our docs"
  • Cross-system search returns too many Jira results
  • Looking for documentation rather than tickets

Example CQL patterns:

text ~ "Stratus minions"
text ~ "authentication" AND type = page
title ~ "deployment guide"

Option C: Targeted Jira Search

Use searchJiraIssuesUsingJql when specifically searching Jira:

searchJiraIssuesUsingJql(
  cloudId="...",
  jql="text ~ 'search terms' OR summary ~ 'search terms'"
)

When to use:

  • User mentions "tickets", "issues", or "bugs"
  • Looking for historical problems or implementation details
  • Cross-system search returns mostly documentation

Example JQL patterns:

text ~ "Stratus minions"
summary ~ "authentication" AND type = Bug
text ~ "deployment" AND created >= -90d

Search Strategy

For most queries, use this sequence:

  1. Start with search (cross-system) - always try this first
  2. If results are unclear, follow up with targeted searches
  3. If results mention specific pages/tickets, fetch them for details

Step 3: Fetch Detailed Content

After identifying relevant sources, fetch full content for comprehensive answers.

For Confluence Pages

When search results reference Confluence pages:

getConfluencePage(
  cloudId="...",
  pageId="[page ID from search results]",
  contentFormat="markdown"
)

Returns: Full page content in Markdown format

When to fetch:

  • Search result snippet is too brief
  • Need complete context
  • Page seems to be the primary documentation

For Jira Issues

When search results reference Jira issues:

getJiraIssue(
  cloudId="...",
  issueIdOrKey="PROJ-123"
)

Returns: Full issue details including description, comments, status

When to fetch:

  • Need to understand a reported bug or issue
  • Search result doesn't show full context
  • Issue contains important implementation notes

Prioritization

Fetch in this order:

  1. Official documentation pages (Confluence pages with "guide", "documentation", "overview" in title)
  2. Recent/relevant issues (Jira tickets that are relevant and recent)
  3. Additional context (related pages mentioned in initial results)

Don't fetch everything - be selective based on relevance to user's question.


Step 4: Synthesize Results

Combine information from multiple sources into a coherent answer.

Synthesis Guidelines

Structure your answer:

  1. Direct Answer First

    • Start with a clear, concise answer to the question
    • "Stratus minions are..."
  2. Detailed Explanation

    • Provide comprehensive details from all sources
    • Organize by topic, not by source
  3. Source Attribution

    • Note where each piece of information comes from
    • Format: "According to [source], ..."
  4. Highlight Discrepancies

    • If sources conflict, note it explicitly
    • Example: "The Confluence documentation states X, however Jira ticket PROJ-123 indicates that due to bug Y, the behavior is actually Z"
  5. Provide Context

    • Mention if information is outdated
    • Note if a feature is deprecated or in development

Synthesis Patterns

Pattern 1: Multiple sources agree

Stratus minions are background worker processes that handle async tasks.

According to the Confluence documentation, they process jobs from the queue and 
can be scaled horizontally. This is confirmed by several Jira tickets (PROJ-145, 
PROJ-203) which discuss minion configuration and scaling strategies.

Pattern 2: Sources provide different aspects

The billing system has two main components:

**Payment Processing** (from Confluence "Billing Architecture" page)
- Handles credit card transactions
- Integrates with Stripe API
- Runs nightly reconciliation

**Invoice Generation** (from Jira PROJ-189)
- Creates monthly invoices
- Note: Currently has a bug where tax calculation fails for EU customers
- Fix planned for Q1 2024

Pattern 3: Conflicting information

There is conflicting information about the authentication timeout:

- **Official Documentation** (Confluence) states: 30-minute session timeout
- **Implementation Reality** (Jira PROJ-456, filed Oct 2023): Actual timeout is 
  15 minutes due to load balancer configuration
- **Status:** Engineering team aware, fix planned but no timeline yet

Current behavior: Expect 15-minute timeout despite docs saying 30 minutes.

Pattern 4: Incomplete information

Based on available documentation:

[What we know about deployment process from Confluence and Jira]

However, I couldn't find information about:
- Rollback procedures
- Database migration handling

You may want to check with the DevOps team or search for additional documentation.

Step 5: Provide Citations

Always include links to source materials so users can explore further.

Citation Format

For Confluence pages:

**Source:** [Page Title](https://yoursite.atlassian.net/wiki/spaces/SPACE/pages/123456)

For Jira issues:

**Related Tickets:**
- [PROJ-123](https://yoursite.atlassian.net/browse/PROJ-123) - Brief description
- [PROJ-456](https://yoursite.atlassian.net/browse/PROJ-456) - Brief description

Complete citation section:

## Sources

**Confluence Documentation:**
- [Stratus Architecture Guide](https://yoursite.atlassian.net/wiki/spaces/DOCS/pages/12345)
- [Minion Configuration](https://yoursite.atlassian.net/wiki/spaces/DEVOPS/pages/67890)

**Jira Issues:**
- [PROJ-145](https://yoursite.atlassian.net/browse/PROJ-145) - Minion scaling implementation
- [PROJ-203](https://yoursite.atlassian.net/browse/PROJ-203) - Performance optimization

**Additional Resources:**
- [Internal architecture doc link if found]

Search Best Practices

Effective Search Terms

Do:

  • ✅ Use specific technical terms: "OAuth authentication flow"
  • ✅ Include system names: "Stratus minions"
  • ✅ Use acronyms if they're common: "API rate limiting"
  • ✅ Try variations if first search fails: "deploy process" → "deployment pipeline"

Don't:

  • ❌ Be too generic: "how things work"
  • ❌ Use full sentences: Use key terms instead
  • ❌ Include filler words: "the", "our", "about"

Search Result Quality

Good results:

  • Recent documentation (< 1 year old)
  • Official/canonical pages (titled "Guide", "Documentation", "Overview")
  • Multiple sources confirming same information
  • Detailed implementation notes

Questionable results:

  • Very old tickets (> 2 years, may be outdated)
  • Duplicate or conflicting information
  • Draft pages or work-in-progress docs
  • Personal pages (may not be official)

When results are poor:

  • Try different search terms
  • Expand search to include related concepts
  • Search for specific error messages or codes
  • Ask user for more context

Handling Common Scenarios

Scenario 1: No Results Found

If searches return no results:

I searched across Confluence and Jira but couldn't find information about "[topic]".

This could mean:
- The concept hasn't been documented yet
- It might be called something else (can you provide alternative names?)
- Documentation might be in a different system I don't have access to

Would you like me to:
1. Try searching with different terms?
2. Search for related concepts?
3. Look for mentions in recent Jira tickets?

Scenario 2: Too Many Results

If search returns 50+ results:

  • Focus on most recent and most relevant (top 10-15)
  • Prioritize official documentation over random tickets
  • Group similar results: "I found 15 tickets related to authentication bugs..."
  • Offer to narrow search: "Would you like me to focus on [specific aspect]?"

Scenario 3: Ambiguous Query

If the user's question is vague:

I found information about several topics related to "[term]":
1. [Topic A] - from Confluence page X
2. [Topic B] - from Jira tickets Y, Z
3. [Topic C] - from documentation W

Which aspect are you most interested in?

Scenario 4: Outdated Information

If you find information is old:

I found documentation about [topic], but note that it's from [date] and may be outdated.

[Provide the information anyway]

You may want to verify this is still current, especially if it's from more than 
a year ago.

Scenario 5: Restricted/Private Content

If search returns inaccessible content:

Search results mention [topic] in the following locations, but I don't have 
access to view the full content:
- Confluence page: [title] (Space: [SPACE])
- Jira issue: PROJ-123

You may need to access these directly or check your permissions.

Examples

Example 1: Clear Documentation Available

User: "What are Stratus minions?"

Process:

  1. Search: search(cloudId="...", query="Stratus minions")
  2. Find: Confluence page "Stratus Architecture" + 3 Jira tickets
  3. Fetch: Get full Confluence page content
  4. Synthesize: Combine architectural overview with implementation details from tickets
  5. Cite: Provide links to all sources

Answer:

Stratus minions are background worker processes that handle asynchronous task 
processing in the Stratus system.

**Key Characteristics:**
- Run independently from web servers
- Process jobs from a Redis queue
- Can be scaled horizontally for increased throughput
- Handle tasks like email sending, report generation, and data processing

**Architecture:**
According to the Stratus Architecture documentation, minions follow a 
worker-queue pattern where:
1. Web application enqueues tasks
2. Minions poll the queue for work
3. Tasks are processed asynchronously
4. Results are stored in the database

**Implementation Notes:**
From Jira ticket PROJ-203, the current deployment runs 5 minion instances, 
with plans to scale to 10 for handling increased load.

## Sources
- [Stratus Architecture Guide](link)
- [PROJ-203](link) - Minion scaling implementation

Example 2: Conflicting Information

User: "How long is our session timeout?"

Process:

  1. Search across Confluence and Jira
  2. Find: Docs say 30 min, but ticket reports actual timeout is 15 min
  3. Fetch both sources for complete context
  4. Clearly note the discrepancy

Answer:

There is a discrepancy between documented and actual behavior:

**Official Documentation** (Security Guidelines):
Session timeout is configured for 30 minutes of inactivity.

**Actual Behavior** (PROJ-456, reported Oct 2023):
Users are being logged out after 15 minutes due to a load balancer configuration 
that overrides the application setting.

**Current Status:**
The engineering team is aware of this issue. The load balancer timeout needs to 
be adjusted to match the application setting. No fix timeline has been set.

**Recommendation:** Plan for 15-minute timeout until this is resolved.

## Sources
- [Security Guidelines](link) - Official documentation
- [PROJ-456](link) - Timeout discrepancy bug report

Example 3: Partial Information

User: "Explain our deployment process"

Process:

  1. Search finds some information but not complete
  2. Synthesize what is available
  3. Note gaps in documentation

Answer:

Based on available documentation, here's what I found about the deployment process:

**Build Phase** (from Confluence "CI/CD Guide"):
1. Code pushed to main branch triggers GitHub Actions
2. Automated tests run (unit, integration)
3. Docker image built and pushed to registry

**Deployment Phase** (from Jira PROJ-789):
4. Staging deployment happens automatically
5. Manual approval required for production
6. Blue-green deployment strategy used

**Gaps in Documentation:**
I couldn't find documented information about:
- Rollback procedures
- Database migration handling
- Post-deployment verification steps

These details may exist in tribal knowledge or need to be documented.

## Sources
- [CI/CD Guide](link)
- [PROJ-789](link) - Deployment pipeline implementation

Would you like me to search for more specific aspects of deployment?

Tips for High-Quality Answers

Do:

✅ Always search before answering (don't rely on general knowledge) ✅ Cite all sources with links ✅ Note discrepancies explicitly ✅ Mention when information is old ✅ Provide context and examples ✅ Structure answers clearly with headers ✅ Link to related documentation

Don't:

❌ Assume general knowledge applies to this company ❌ Make up information if search returns nothing ❌ Ignore conflicting information ❌ Quote entire documents (summarize instead) ❌ Overwhelm with too many sources (curate top 5-10) ❌ Forget to fetch details when snippets are insufficient


When NOT to Use This Skill

This skill is for internal company knowledge only. Do NOT use for:

❌ General technology questions (use your training knowledge) ❌ External documentation (use web_search) ❌ Company-agnostic questions ❌ Questions about other companies ❌ Current events or news

Examples of what NOT to use this skill for:

  • "What is machine learning?" (general knowledge)
  • "How does React work?" (external documentation)
  • "What's the weather?" (not knowledge search)
  • "Find a restaurant" (not work-related)

Quick Reference

Primary tool: search(cloudId, query) - Use this first, always

Follow-up tools:

  • getConfluencePage(cloudId, pageId, contentFormat) - Get full page content
  • getJiraIssue(cloudId, issueIdOrKey) - Get full issue details
  • searchConfluenceUsingCql(cloudId, cql) - Targeted Confluence search
  • searchJiraIssuesUsingJql(cloudId, jql) - Targeted Jira search

Answer structure:

  1. Direct answer
  2. Detailed explanation
  3. Source attribution
  4. Discrepancies (if any)
  5. Citations with links

Remember:

  • Parallel search > Sequential search
  • Synthesize, don't just list
  • Always cite sources
  • Note conflicts explicitly
  • Be clear about gaps in documentation

来自 openai 的更多技能

user-context
openai
加载或管理数据分析插件的持久化源路由偏好、引导逻辑、设置进度及语义层注册表。
official
notion-research-documentation
openai
研究Notion内容,并将其综合成带有引用的结构化简报、报告或对比。通过定向查询搜索并获取Notion页面,然后按主题组织发现,附带内联来源引用和参考文献部分。根据范围和用户目标,从四种输出格式(快速简报、研究摘要、对比、综合报告)中选择。使用内置模板创建和更新Notion页面;直接链接来源,并在新信息到达时跟踪变更...
official
rcsb-pdb-skill
openai
提交紧凑的RCSB PDB请求以获取核心元数据、Search API查询和FASTA下载。当用户需要简洁的RCSB摘要时使用;保存原始JSON或…
official
pdf
openai
PDF的读取、创建与验证,支持可视化渲染与程序化生成。使用Poppler(pdftoppm)将PDF页面渲染为PNG,以便在交付前直观检查布局、间距与排版;通过reportlab程序化生成PDF,确保格式可靠;利用pdfplumber或pypdf提取文本与元数据。执行质量标准:无文本裁剪、元素重叠、表格损坏或渲染伪影;仅使用ASCII连字符,引用内容需可读。使用...
official
test-coverage-improver
openai
改进OpenAI Agents JS mon
official
playwright
openai
基于终端驱动的浏览器自动化,支持元素快照与交互式UI工作流。通过playwright-cli包装脚本运行(需npx),支持无头模式与有头模式进行可视化调试。核心工作流:打开页面、获取快照以稳定元素引用、使用引用进行交互、在导航或DOM变更后重新快照。包含表单填写、点击、输入、多标签页管理、截图/PDF捕获及用于流程调试的追踪记录。元素引用(如e3、e15)...
official
ukb-topmed-phewas-skill
openai
通过接受rsID、GRCh37或GRCh38输入并解析为所需的GRCh38查询,获取单个变体的紧凑型UKB-TOPMed PheWAS摘要。当需要…时使用。
official
code-review-context
openai
模型可见上下文
official