ruvector/examples/python-salesforce-agentforce/namedCredentials/RuVector_API.namedCredential-meta.xml
rUv 87ca4dd52b
feat(ruvector-py): Python SDK, CLI and MCP server (ADR-352) (#1117)
Adds the ruvector Python package (crates/ruvector-py): Rust core via PyO3/maturin (RaBitQ and HNSW indexes, collections, graph, GNN, clustering, SONA), a CLI, a stdio and HTTP MCP server with bearer auth, and LangChain, LlamaIndex and Salesforce integrations.

Pre-publish hardening from an independent review: generic-CPU aarch64 wheel, request and size bounds, widget escaping, fail-closed network exposure and a read-only serve mode, MIT licence file, NaN and infinity rejection, click and rich as base dependencies, sdist job and tag-equals-version gate, atomic save and validated load, and HNSW metadata JSON converter fixes (exact large integers, no silent NaN or surrogate corruption).

Verified before merge: 272 pytest and 50 cargo tests, all six wheel and sdist build jobs, twine check on every artifact, clean-venv install of the CI wheel. The two failing checks (npm audit, Tests core-and-rest) also fail on main and are not changed by this PR.

Co-Authored-By: claude-flow <ruv@ruv.net>
Claude-Session: https://claude.ai/code/session_01EwK8N12XfJiMbebRbWeoob
2026-10-09 16:23:02 -07:00

26 lines
1.4 KiB
XML

<?xml version="1.0" encoding="UTF-8"?>
<!--
ILLUSTRATIVE, NOT VALIDATED against a real org or the current Salesforce
Metadata API schema — see ../README.md. Written from Salesforce's public
Named Credential documentation, not confirmed via a live org deploy or a
Metadata API describe call (this session's task boundary: mock Salesforce
APIs, do not hit a real org). Review in Setup before deploying; the actual
auth secret belongs in the org's Named Credential configuration UI, never
committed to source control.
-->
<NamedCredential xmlns="http://soap.sforce.com/2006/04/metadata">
<label>RuVector API</label>
<!-- Replace with the real externally-reachable host for your
`ruvector serve --http` deployment. -->
<url>https://REPLACE-WITH-YOUR-RUVECTOR-HOST</url>
<!-- Bearer-token auth: the External Service's generated HTTP calls carry
this as the Authorization header value, matching
RUVECTOR_SALESFORCE_ACTION_TOKEN on the ruvector side. Configure the
actual secret value through Setup, not in this file. -->
<authentication>
<authProtocol>Custom</authProtocol>
</authentication>
<generateAuthorizationHeader>true</generateAuthorizationHeader>
<allowMergeFieldsInHttpHeader>false</allowMergeFieldsInHttpHeader>
<allowMergeFieldsInHttpBody>false</allowMergeFieldsInHttpBody>
</NamedCredential>