Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
35 commits
Select commit Hold shift + click to select a range
c7ad71f
Senamtic Search on action in Python AI SDK
shashi-stackone Feb 18, 2026
0210c1f
Filter tools based on the SDK auth config and connector
shashi-stackone Feb 18, 2026
b1105fa
Use the local benchmark from the ai-generations
shashi-stackone Feb 18, 2026
d49f52b
Add Semantinc search bench mark with local benchmarks
shashi-stackone Feb 18, 2026
680fa8e
Fix CI lint errors
shashi-stackone Feb 18, 2026
1ee842b
Fix the lint in the benchmark file
shashi-stackone Feb 18, 2026
d6fba69
Formalise the docs and code
shashi-stackone Feb 18, 2026
3eb0641
Keep semantic search minimal in the README
shashi-stackone Feb 18, 2026
fd37d93
Remove the old benchmark data
shashi-stackone Feb 18, 2026
f5ef955
implement PR feedback suggestions from cubic
shashi-stackone Feb 18, 2026
b7b522f
fix nullable in the semantic tool schema
shashi-stackone Feb 18, 2026
e9c6b86
limit override
shashi-stackone Feb 18, 2026
34e1ca6
handle per connector calls to avoid the guesswork
shashi-stackone Feb 18, 2026
82082cb
simplify utility_tools API by inferring semantic search from client p…
shashi-stackone Feb 18, 2026
8a74517
Benchmark update and PR suggestions
shashi-stackone Feb 18, 2026
85b0395
update the README gst
shashi-stackone Feb 18, 2026
79c762a
Note on the fetch tools for actions that user expect to discover
shashi-stackone Feb 18, 2026
6ee1adf
Update examples and improve the semantic seach
shashi-stackone Feb 18, 2026
7a65367
Fix ruff issues
shashi-stackone Feb 18, 2026
64a0a60
Document the semantic search feature in the python files and example
shashi-stackone Feb 18, 2026
4083642
Respect the backend results unless top_k specified explicitly, add py…
shashi-stackone Feb 18, 2026
b926db1
move the crewAI tools conversation back in the example
shashi-stackone Feb 18, 2026
d2dd2f5
CI Trigger
shashi-stackone Feb 18, 2026
719b391
Fix unit tests with updated top_k behavior
shashi-stackone Feb 18, 2026
b360b00
Update PR with correct approach mentioned in the PR comments
shashi-stackone Feb 18, 2026
7b77f33
Update example and remove unwated crewai examples
shashi-stackone Feb 18, 2026
bab931b
Remove the crewai reference from the README
shashi-stackone Feb 19, 2026
d62943d
fix(semantic-search): scope tool_search to user's linked connectors
shashi-stackone Feb 19, 2026
5eaa3c5
Fix the Ruff CI issue
shashi-stackone Feb 19, 2026
173121d
Add back creai intefration and test integration
shashi-stackone Feb 19, 2026
1e4cc9a
Remove the sematic search example from the tools
shashi-stackone Feb 19, 2026
f1db9f2
Merge branch 'main' into semantic_search
shashi-stackone Feb 19, 2026
a87fa00
Semantic Search
shashi-stackone Feb 19, 2026
c9c0358
Cubic suggestions
shashi-stackone Feb 19, 2026
71457af
Optinally support project_ids in the SDK search
shashi-stackone Feb 19, 2026
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
21 changes: 21 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -19,6 +19,7 @@ StackOne AI provides a unified interface for accessing various SaaS tools throug
- Glob pattern filtering with patterns like `"hris_*"` and exclusions `"!hris_delete_*"`
- Provider and action filtering
- Multi-account support
- **Semantic Search**: AI-powered tool discovery using natural language queries
- **Utility Tools** (Beta): Dynamic tool discovery and execution based on natural language queries
- Integration with popular AI frameworks:
- OpenAI Functions
Expand Down Expand Up @@ -325,6 +326,25 @@ execute_tool = utility_tools.get_tool("tool_execute")
result = execute_tool.call(toolName="hris_list_employees", params={"limit": 10})
```

## Semantic Search

Discover tools using natural language instead of exact names. Queries like "onboard new hire" resolve to the right actions even when the tool is called `hris_create_employee`.
Copy link

Copilot AI Feb 19, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The new Semantic Search section says the action is called hris_create_employee, but the rest of the repo (examples + semantic normalization/tests) uses connector-prefixed tool names like bamboohr_create_employee. This is likely to confuse users trying the feature; update the example text to match the actual tool naming used by the SDK, or explicitly explain the difference if both naming schemes exist.

Suggested change
Discover tools using natural language instead of exact names. Queries like "onboard new hire" resolve to the right actions even when the tool is called `hris_create_employee`.
Discover tools using natural language instead of exact names. Queries like "onboard new hire" resolve to the right actions even when the actual tool is named `bamboohr_create_employee` (rather than a generic `hris_create_employee`).

Copilot uses AI. Check for mistakes.

```python
from stackone_ai import StackOneToolSet

toolset = StackOneToolSet()

# Search by intent — returns Tools collection ready for any framework
tools = toolset.search_tools("manage employee records", account_ids=["your-account-id"], top_k=5)
openai_tools = tools.to_openai()

# Lightweight: inspect results without fetching full tool definitions
results = toolset.search_action_names("time off requests", top_k=5)
```

Results are automatically scoped to connectors in your linked accounts. See [Semantic Search Example](examples/semantic_search_example.py) for utility tools integration, OpenAI, and LangChain patterns.

## Examples

For more examples, check out the [examples/](examples/) directory:
Expand All @@ -335,6 +355,7 @@ For more examples, check out the [examples/](examples/) directory:
- [LangChain Integration](examples/langchain_integration.py)
- [CrewAI Integration](examples/crewai_integration.py)
- [Utility Tools](examples/utility_tools_example.py)
- [Semantic Search](examples/semantic_search_example.py)

## Development

Expand Down
Loading