@continual/integrations
v0.0.1-rc.35
Published
Continual API Integrations
Keywords
Readme
@continual/integrations
This package provides integration modules for the Continual Agent Platform, allowing you to connect your agents with various third-party services and APIs.
Installation
As a Dependency
npm install @continual/integrations
# or
yarn add @continual/integrations
# or
pnpm add @continual/integrationsFor CLI Access (Global Installation)
npm install -g @continual/integrations
# or
yarn global add @continual/integrations
# or
pnpm add -g @continual/integrationsAfter installing globally, you can use the continual command anywhere in your terminal.
Available Integrations
The package includes integrations with various services and platforms:
Communication & Collaboration
- Slack - Slack workspace integration for messaging and bot interactions
- Email - SMTP email sending capabilities
- Gmail - Google Gmail API integration for reading and sending emails
- Markdown Email Renderer - Render emails from markdown templates
Project Management & Development
- Linear - Linear workspace and personal app integrations
- GitHub - GitHub workspace and personal repository integrations
- Notion - Notion workspace integration with markdown support
- Buildkite - CI/CD pipeline integration
Google Services
- Google Drive - File storage and management
- Google Calendar - Calendar events and scheduling
- Google Meet Transcripts - Meeting transcript access
- Google Logs & Alerts - Cloud logging and alerting
Customer & Business Tools
- HubSpot - CRM and marketing automation
- Continual Enrich - People and company data enrichment
- Continual Prospect - People and company search
Monitoring & Analytics
- Sentry - Error tracking and performance monitoring
- Axiom - Log analytics and observability
AI & Content Tools
- Exa - AI-powered search and content discovery
- ReadAI - Document reading and analysis
- Website Content Extractor - Extract content from web pages
System & Development Tools
- Code Development - System automation with bash commands and file operations
- Object Store - Object storage management
- System Tools - Core system utilities
- Todo List - Task management functionality
- UI Components - Reusable UI component library
- Continual App - Core Continual platform integration
Usage
Import and use app builder functions from the integrations package:
import {
createLinearWorkspaceApp,
createNotionMarkdownApp,
createGithubWorkspaceApp,
createGmailApp,
createComputerUseServer,
createHubspotApp,
createSlackApp,
} from "@continual/integrations";
// Create integration apps
const linearApp = createLinearWorkspaceApp();
const notionApp = createNotionMarkdownApp();
const gmailApp = createGmailApp();
const computerUseApp = createComputerUseServer();Each integration exports app builder functions and configuration schemas that can be used with the Continual Agent SDK.
CLI Commands
The continual command line tool provides utilities for working with Continual integrations and
apps.
continual [options] <command>Global Options
-c, --cwd <directory>: Set the working directory--version: Show version number--help: Show help information
Available Commands
apps: Manage Continual apps (serve, list)chat: Interactive chat interface
Apps Command
The apps command provides app management functionality.
continual apps <subcommand>Serve Apps
Run an appserver with selected apps:
continual apps serve [options]Options:
-p, --port <port>: The port to run the server on (default: "3456")-a, --apps <apps>: Comma-separated list of apps to include (default: "coding")-n, --networkproxy: Enable a network proxy to expose your local server to the internet-r, --register: Enable self-registration of apps (requires CONTINUAL_API_KEY environment variable)
Examples:
# Run with default Code Development app
continual apps serve
# Run with custom port
continual apps serve --port 4000
# Run with network proxy (requires ngrok)
continual apps serve --networkproxy
# Run with auto-registration enabled
export CONTINUAL_API_KEY=your_api_key
continual apps serve --registerList Available Apps
List all available apps that can be used with the serve command:
continual apps list [options]Options:
-j, --json: Output as JSON (useful for programmatic use)
Examples:
# List all available apps
continual apps list
# Get apps in JSON format
continual apps list --jsonChat Command
Interactive chat interface for testing integrations:
continual chat [options]Authentication
When using integrations that require OAuth or API keys, you'll need to set up the appropriate credentials. The package supports various authentication methods:
OAuth Integrations
For OAuth-based integrations, you can provide credentials in two ways:
Environment Variables with JSON Data:
export SERVICE_OAUTH_CREDENTIALS_DATA='{"clientId":"your-id","clientSecret":"your-secret"}'Environment Variables with File Path:
export SERVICE_OAUTH_CREDENTIALS_PATH=/path/to/credentials.json
Supported OAuth Services
Linear
LINEAR_OAUTH_CREDENTIALS_DATA='{"clientId":"...","clientSecret":"..."}'
# or
LINEAR_OAUTH_CREDENTIALS_PATH=/path/to/linear-credentials.json
LINEAR_WEBHOOK_SECRET=your-webhook-secretGitHub
GITHUB_OAUTH_CREDENTIALS_DATA='{"clientId":"...","clientSecret":"..."}'
# or
GITHUB_OAUTH_CREDENTIALS_PATH=/path/to/github-credentials.json
GITHUB_APP_ID=your-app-id
GITHUB_APP_PRIVATE_KEY=your-private-key
GITHUB_WEBHOOK_SECRET=your-webhook-secretGoogle Services (Gmail, Calendar, Drive, etc.)
GOOGLE_OAUTH_CREDENTIALS_DATA='{"web":{"client_id":"...","client_secret":"...","redirect_uris":["..."]}}'
# or
GOOGLE_OAUTH_CREDENTIALS_PATH=/path/to/google-credentials.jsonNotion
NOTION_OAUTH_CREDENTIALS_DATA='{"clientId":"...","clientSecret":"..."}'
# or
NOTION_OAUTH_CREDENTIALS_PATH=/path/to/notion-credentials.jsonHubSpot
HUBSPOT_OAUTH_CREDENTIALS_DATA='{"clientId":"...","clientSecret":"..."}'
# or
HUBSPOT_OAUTH_CREDENTIALS_PATH=/path/to/hubspot-credentials.jsonSalesforce
SALESFORCE_OAUTH_CREDENTIALS_DATA='{"clientId":"...",clientSecret":"..."}'
# or
SALESFORCE_OAUTH_CREDENTIALS_DATA=/path/to/salesforce-credentials.jsonSlack
SLACK_OAUTH_CREDENTIALS_DATA='{"clientId":"...","clientSecret":"..."}'Network Proxy with ngrok
When using the --networkproxy flag, the server uses ngrok to create a secure tunnel and expose
your local server to the internet. This is useful for:
- Testing webhooks that need to reach your local machine
- Sharing your development environment with remote collaborators
- Testing integrations that require a publicly accessible URL
- Enabling app registration in production workspace
To use this feature:
- Install and configure ngrok with your authtoken
- Set your ngrok authtoken as an environment variable:
export NGROK_AUTHTOKEN=your_ngrok_authtoken - Start the server with the proxy enabled:
continual apps serve --networkproxy
App Registration
When using the --register flag, the appserver will automatically register the running apps with
the Continual platform. This requires:
- Setting the
CONTINUAL_API_KEYenvironment variable with your Continual API key - The server must be accessible from the internet (consider using
--networkproxyfor local development)
If the CONTINUAL_API_KEY is not set when using --register, the command will exit with an error.
Development
Building the Package
pnpm buildRunning Tests
pnpm testDevelopment Mode
pnpm devType Checking
pnpm compileDocumentation
For more detailed documentation on each integration, see the Continual documentation.
License
See license file in the root of the project.
