We use advanced analysis to generate safe, high-confidence PRs — for bugs, features, and code reviews alike.
Bismuth helps ship more features and prevent more bugs and security issues so your team can go further and with the confidence there is a safety net.
Extend Bismuth's capabilities to fit your specific workflow. Our SDK lets you create custom integrations, automate complex processes, and embed Bismuth's intelligence directly.
// npm install bismuthsdk
// Importing a repository
import { BismuthClient, applyDiff } from "bismuthsdk";
const api = new BismuthClient({
apiKey: process.env.BISMUTH_API_KEY,
});
// Given a local repository, loadProject will import and upload code to Bismuth as necessary
// This enables Bismuth to analyze, test, and search your code during codegen
const project = await api.loadProject(repoDir);
// Search the repository for a specific query
const results = await project.getBranch("main").search("query", 3);
// Generate changes for a branch
const diff = await branch.generate("change test.py to say goodbye world", {
localChanges: {}, // path -> contents for locally modified files
startLocations: undefined, // Optional list of Location objects for the agent to start from
session: undefined, // Optional session name to preserve messages and context between generate() calls
});
console.log(diff);
// Apply the changes to the local repository
await applyDiff(exampleDir, diff);
Bismuth is quick to install and get started with, just follow the steps below.