@entelog/sdk
v1.0.0
Published
Effortless oversight for AI agents. Real-time activity feeds, risk scoring, and human-readable summaries.
Maintainers
Readme
@entelog/sdk
Zero-config compliance logging for AI agents. Add a single line of code to capture every agent action with AI-powered summaries, risk scoring, and audit-ready reports.
Install
npm install @entelog/sdkQuick Start
import { Entelog } from '@entelog/sdk';
const audit = new Entelog('a0_live_xxxxx');
// Log any agent action
await audit.log({
agent: 'SalesBot',
action: 'data_access',
data: {
query: 'customer lookup',
customer_id: 'cust_123',
fields_accessed: ['name', 'email'],
},
});
// Flush on shutdown
await audit.shutdown();That's it. Every logged action is automatically:
- Summarized in plain English by AI
- Risk-scored (low / medium / high)
- Visible in your real-time dashboard at entelog.com
Configuration
const audit = new Entelog({
apiKey: process.env.ENTELOG_API_KEY!,
batchSize: 50, // events before auto-flush (default: 50)
flushInterval: 5000, // ms between flushes (default: 5000)
maxRetries: 3, // retry failed requests (default: 3)
debug: false, // enable console logging
});Action Types
Use any string, but these are the standard categories:
| Action | When to use |
|---|---|
| data_access | Agent reads from a database, file, or API |
| api_call | Agent calls an external service |
| generation | Agent generates text, code, or other content |
| decision | Agent makes an automated decision |
| tool_call | Agent uses a tool or function |
API
| Method | Description |
|---|---|
| new Entelog(apiKey \| options) | Create a client |
| audit.log(event) | Queue an event (auto-flushes when batch is full) |
| audit.flush() | Send all queued events immediately |
| audit.shutdown() | Stop auto-flush and send remaining events |
Framework Integrations
LangChain
from entelog import Entelog
from langchain.callbacks.base import BaseCallbackHandler
audit = Entelog("a0_live_xxxxx")
class EntelogCallback(BaseCallbackHandler):
def on_tool_start(self, serialized, input_str, **kwargs):
audit.log(
agent="LangChainAgent",
action="tool_call",
data={"tool": serialized.get("name"), "input": input_str}
)
agent = initialize_agent(tools, llm, callbacks=[EntelogCallback()])OpenAI Function Calling
import { Entelog } from '@entelog/sdk';
const audit = new Entelog('a0_live_xxxxx');
async function executeFunction(name: string, args: any) {
const result = await functions[name](args);
await audit.log({
agent: 'AssistantBot',
action: 'function_call',
data: { function: name, arguments: args, result },
});
return result;
}Get your API key
- Sign up at entelog.com
- Create a workspace
- Click Generate Key
- Use the key here
License
MIT — entelog.com
