Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
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
5 changes: 5 additions & 0 deletions .changeset/shaggy-snakes-grab.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
---
"@plotday/agent": minor
---

Changed: Renamed @plotday/sdk to @plotday/agent.
7 changes: 7 additions & 0 deletions .changeset/three-chicken-refuse.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
---
"@plotday/tool-outlook-calendar": patch
"@plotday/tool-google-calendar": patch
"@plotday/tool-google-contacts": patch
---

Changed: Updated to @plotday/agent
10 changes: 5 additions & 5 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@

## Packages

- **[@plotday/sdk](./sdk)** - Core SDK with types, Agent class, built-in tool interfaces, and CLI
- **[@plotday/agent](./agent)** - Core SDK with types, Agent class, built-in tool interfaces, and CLI
- **[tools/](./tools)** - Tools for building agents, including integrations with popular services
- **[agents/](./agents)** - Full source code for several Plot agents

Expand All @@ -23,10 +23,10 @@ You'll need a [Plot account](https://plot.day) to deploy agents.

```bash
# Create a new agent
npx @plotday/sdk agent create
npx @plotday/agent create

# Connect your Plot account
npx @plotday/sdk login
npx @plotday/agent login

# Deploy your agent
cd my-agent
Expand All @@ -35,11 +35,11 @@ npm run deploy

## Documentation

See the [SDK documentation](./sdk/README.md) for detailed guides and API reference.
See the [SDK documentation](./agent/README.md) for detailed guides and API reference.

## Changelog

See the [SDK changelog](./sdk/CHANGELOG.md) for version history and release notes.
See the [SDK changelog](./agent/CHANGELOG.md) for version history and release notes.

## License

Expand Down
8 changes: 4 additions & 4 deletions RELEASING.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@ This repository uses [Changesets](https://github.com/changesets/changesets) to m

## Package Versioning Strategy

- **SDK** (`@plotday/sdk`): Independent versioning
- **SDK** (`@plotday/agent`): Independent versioning
- **Tools** (`@plotday/tool-*`): Independent versioning
- **Agents** (`@plotday/agent-*`): Not published, excluded from releases

Expand Down Expand Up @@ -102,7 +102,7 @@ This tagging convention allows you to:

Each GitHub release includes:

- **Title**: Package name and version (e.g., `@plotday/sdk@0.9.1`)
- **Title**: Package name and version (e.g., `@plotday/agent@0.9.1`)
- **Release Notes**: Automatically extracted from the package's CHANGELOG.md for that version
- **Assets**: None (packages are distributed via npm)

Expand All @@ -121,7 +121,7 @@ If you need to create a GitHub release manually after publishing:

```bash
# For SDK
gh release create sdk@0.9.1 --title "@plotday/sdk@0.9.1" --notes "Release notes here"
gh release create sdk@0.9.1 --title "@plotday/agent@0.9.1" --notes "Release notes here"

# For a tool
gh release create tool-google-calendar@0.1.0 --title "@plotday/tool-google-calendar@0.1.0" --notes "Release notes here"
Expand Down Expand Up @@ -198,7 +198,7 @@ git push
pnpm release

# 5. (Optional) Create GitHub release manually
gh release create sdk@0.9.1 --title "@plotday/sdk@0.9.1" --notes "Release notes"
gh release create sdk@0.9.1 --title "@plotday/agent@0.9.1" --notes "Release notes"
```

⚠️ This should only be done in emergencies. The automated workflow is preferred.
Expand Down
2 changes: 1 addition & 1 deletion agents/chat/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@
"lint": "plot agent lint"
},
"dependencies": {
"@plotday/sdk": "workspace:^",
"@plotday/agent": "workspace:^",
"typebox": "^1.0.35"
},
"devDependencies": {
Expand Down
6 changes: 3 additions & 3 deletions agents/chat/src/index.ts
Original file line number Diff line number Diff line change
Expand Up @@ -7,9 +7,9 @@ import {
AuthorType,
Tag,
type ToolBuilder,
} from "@plotday/sdk";
import { AI, type AIMessage } from "@plotday/sdk/tools/ai";
import { ActivityAccess, Plot } from "@plotday/sdk/tools/plot";
} from "@plotday/agent";
import { AI, type AIMessage } from "@plotday/agent/tools/ai";
import { ActivityAccess, Plot } from "@plotday/agent/tools/plot";

export default class ChatAgent extends Agent<ChatAgent> {
build(build: ToolBuilder) {
Expand Down
2 changes: 1 addition & 1 deletion agents/chat/tsconfig.json
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
{
"$schema": "https://json.schemastore.org/tsconfig",
"extends": "@plotday/sdk/tsconfig.base.json",
"extends": "@plotday/agent/tsconfig.base.json",
"include": ["src/**/*.ts"]
}
2 changes: 1 addition & 1 deletion agents/events/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@
"logs": "plot agent logs"
},
"dependencies": {
"@plotday/sdk": "workspace:^",
"@plotday/agent": "workspace:^",
"@plotday/tool-google-calendar": "workspace:^",
"@plotday/tool-outlook-calendar": "workspace:^"
},
Expand Down
6 changes: 3 additions & 3 deletions agents/events/src/index.ts
Original file line number Diff line number Diff line change
Expand Up @@ -6,14 +6,14 @@ import {
Agent,
type Priority,
type ToolBuilder,
} from "@plotday/sdk";
} from "@plotday/agent";
import type {
Calendar,
CalendarAuth,
CalendarTool,
SyncOptions,
} from "@plotday/sdk/common/calendar";
import { ActivityAccess, Plot } from "@plotday/sdk/tools/plot";
} from "@plotday/agent/common/calendar";
import { ActivityAccess, Plot } from "@plotday/agent/tools/plot";
import { GoogleCalendar } from "@plotday/tool-google-calendar";
import { OutlookCalendar } from "@plotday/tool-outlook-calendar";

Expand Down
2 changes: 1 addition & 1 deletion agents/events/tsconfig.json
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
{
"$schema": "https://json.schemastore.org/tsconfig",
"extends": "@plotday/sdk/tsconfig.base.json",
"extends": "@plotday/agent/tsconfig.base.json",
"include": ["src/**/*.ts"]
}
File renamed without changes.
8 changes: 7 additions & 1 deletion sdk/CHANGELOG.md → builder/CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
# @plotday/sdk
# @plotday/agent

## 0.17.0

Expand All @@ -8,6 +8,12 @@

### Changed

- **BREAKING: Package renamed from @plotday/sdk to @plotday/agent**
- Product name changed to "Plot Agent Builder"
- Directory renamed from `public/sdk/` to `public/builder/`
- Export `./sdk-docs` renamed to `./builder-docs`
- Function `getSDKDocumentation()` renamed to `getBuilderDocumentation()`
- See deprecation notice in @plotday/sdk@0.17.1
- BREAKING: Creating and updating Activity using the Plot tool now requires requesting permission in options ([#51](https://github.com/plotday/plot/pull/51) [`b3242e4`](https://github.com/plotday/plot/commit/b3242e4adecea87011379ac2dd58712dc91729d7))
- BREAKING: Agents and Tools now define a build() method to gain access to tools, which are then available via this.tools.
- BREAKING: Renamed callCallback, run, cancel, and cancelAll Agent/Tool functions ([#51](https://github.com/plotday/plot/pull/51) [`49b4dc9`](https://github.com/plotday/plot/commit/49b4dc94e08906a89799903610325c5fe7ebe10b))
Expand Down
30 changes: 16 additions & 14 deletions sdk/DOCS.md → builder/DOCS.md
Original file line number Diff line number Diff line change
@@ -1,14 +1,14 @@
# Plot SDK Documentation
# Plot Agent Builder Documentation

This directory contains the TypeDoc-generated API documentation for the Plot Agent SDK.
This directory contains the TypeDoc-generated API documentation for the Plot Agent Builder.

## Published Documentation

The SDK documentation is automatically published to GitHub Pages whenever changes are pushed to the main branch:

**Live Documentation**: [https://plotday.github.io/plot/](https://plotday.github.io/plot/)

The documentation is automatically updated whenever changes to the SDK are merged into the main branch, ensuring developers always have access to the latest API reference.
The documentation is automatically updated whenever changes to the Builder are merged into the main branch, ensuring developers always have access to the latest API reference.

## Generating Documentation

Expand All @@ -17,8 +17,8 @@ The documentation is automatically generated during the build process, but you c
### Generate Documentation

```bash
# From the SDK directory
pnpm docs
# From the Builder directory
pnpm build:docs
```

This will create the documentation in `dist/docs/`
Expand All @@ -27,7 +27,7 @@ This will create the documentation in `dist/docs/`

```bash
# Remove the generated docs
pnpm docs:clean
pnpm clean:docs
```

## Viewing Documentation Locally
Expand All @@ -40,6 +40,7 @@ pnpm docs:open
```

This script automatically uses the correct command for your platform:

- `open` on macOS
- `xdg-open` on Linux
- `start` on Windows
Expand Down Expand Up @@ -73,13 +74,14 @@ The documentation is automatically published in two ways:

### 1. GitHub Pages (Automatic)

When changes to the SDK are pushed to the main branch, a GitHub Action automatically:
- Builds the SDK and generates the documentation
When changes to the Builder are pushed to the main branch, a GitHub Action automatically:

- Builds the Builder and generates the documentation
- Deploys it to GitHub Pages at [https://plotday.github.io/plot/](https://plotday.github.io/plot/)

**Workflow Location**: `.github/workflows/deploy-sdk-docs.yml`

**Trigger**: Automatic on push to `main` when files in `public/sdk/**` change
**Trigger**: Automatic on push to `main` when files in `public/agent/**` change

### 2. npm Package (Manual)

Expand All @@ -103,7 +105,7 @@ The `deploy-sdk-docs.yml` workflow includes all necessary permissions and config

The documentation generation is configured in `typedoc.json`. Key settings:

- **Entry Points**: Main SDK exports (agent, tool, plot, tools/*)
- **Entry Points**: Main SDK exports (agent, tool, plot, tools/\*)
- **Output**: `dist/docs/`
- **Visibility**: Public APIs only (excludes private/protected/internal members)
- **Theme**: Default TypeDoc theme optimized for GitHub Pages
Expand All @@ -128,11 +130,11 @@ When adding new public APIs:
3. Use `@returns` tag for return values
4. Use `@example` tags to show usage examples
5. Use `@see` tags to link to related APIs
6. Regenerate docs with `pnpm docs` to verify formatting
6. Regenerate docs with `pnpm build:docs` to verify formatting

### JSDoc Example

```typescript
````typescript
/**
* Creates a new activity in the current priority.
*
Expand All @@ -159,11 +161,11 @@ When adding new public APIs:
* @see {@link ActivityType} for available activity types
*/
abstract createActivity(activity: NewActivity): Promise<Activity>;
```
````

## Support

For issues or questions about the documentation:

- Open an issue at https://github.com/plotday/plot/issues
- Open an issue at <https://github.com/plotday/plot/issues>
- Tag it with the `documentation` label
File renamed without changes.
30 changes: 17 additions & 13 deletions sdk/README.md → builder/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,10 +4,10 @@
</a>
</p>
<h1 align="center">
Plot Agent SDK
Plot Agent Builder
</h1>
<p align="center">
The official SDK for building <a href="https://plot.day">Plot</a> agents -<br/>
The official Builder for building <a href="https://plot.day">Plot</a> agents -<br/>
custom code that organizes and prioritizes all your messages, tasks, and apps.
</p>

Expand All @@ -17,6 +17,10 @@

---

> **⚠️ DEPRECATED:** This package has been renamed to **@plotday/agent**. Please use [@plotday/agent](https://www.npmjs.com/package/@plotday/agent) instead.

---

## Quick Start

Choose your path:
Expand All @@ -42,8 +46,8 @@ I want an agent that:
**2. Deploy:**

```bash
npx @plotday/sdk login
npx @plotday/sdk agent deploy
npx @plotday/agent login
npx @plotday/agent deploy
```

That's it! [Learn more →](https://build.plot.day/GETTING_STARTED.html#no-code-agents)
Expand All @@ -55,14 +59,14 @@ Build agents with TypeScript for maximum flexibility.
**1. Create a new agent:**

```bash
npx @plotday/sdk agent create
npx @plotday/agent create
```

**2. Implement your agent:**

```typescript
import { Agent, ActivityType, type Priority, type ToolBuilder } from "@plotday/sdk";
import { Plot } from "@plotday/sdk/tools/plot";
import { Agent, ActivityType, type Priority, type ToolBuilder } from "@plotday/agent";
import { Plot } from "@plotday/agent/tools/plot";

export default class MyAgent extends Agent<MyAgent> {
build(build: ToolBuilder) {
Expand Down Expand Up @@ -146,10 +150,10 @@ await this.tools.plot.createActivity({
plot login

# Agent management
plot agent create # Create new agent project
plot agent generate # Generate code from plot-agent.md
plot agent deploy # Deploy to Plot
plot agent link # Activate for a priority
plot create # Create new agent project
plot generate # Generate code from plot-agent.md
plot deploy # Deploy to Plot
plot logs # Stream real-time agent logs

# Priority management
plot priority list # List all priorities
Expand Down Expand Up @@ -228,11 +232,11 @@ export default class GitHubAgent extends Agent<GitHubAgent> {

## TypeScript Configuration

Extend the SDK's base configuration in your `tsconfig.json`:
Extend the Builder's base configuration in your `tsconfig.json`:

```json
{
"extends": "@plotday/sdk/tsconfig.base.json",
"extends": "@plotday/agent/tsconfig.base.json",
"include": ["src/*.ts"]
}
```
Expand Down
File renamed without changes.
File renamed without changes.
8 changes: 4 additions & 4 deletions sdk/cli/commands/create.ts → builder/cli/commands/create.ts
Original file line number Diff line number Diff line change
Expand Up @@ -103,7 +103,7 @@ export async function createCommand(options: CreateOptions) {
deploy: "plot agent deploy",
},
dependencies: {
"@plotday/sdk": sdkVersion,
"@plotday/agent": sdkVersion,
},
devDependencies: {
typescript: "^5.8.3",
Expand All @@ -117,7 +117,7 @@ export async function createCommand(options: CreateOptions) {

// Create tsconfig.json
const tsconfigJson = {
extends: "@plotday/sdk/tsconfig.base.json",
extends: "@plotday/agent/tsconfig.base.json",
include: ["src/*.ts"],
};
fs.writeFileSync(
Expand All @@ -130,8 +130,8 @@ export async function createCommand(options: CreateOptions) {
Agent,
type Priority,
type ToolBuilder,
} from "@plotday/sdk";
import { Plot } from "@plotday/sdk/tools/plot";
} from "@plotday/agent";
import { Plot } from "@plotday/agent/tools/plot";

export default class MyAgent extends Agent<MyAgent> {
build(build: ToolBuilder) {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -291,7 +291,7 @@ export async function deployCommand(options: DeployOptions) {
process.exit(1);
} else {
out.success("Validation passed - agent is ready to deploy");
out.info("Run without --dry-run to deploy", [`plot agent deploy`]);
out.info("Run without --dry-run to deploy", [`plot deploy`]);
}
return;
}
Expand Down
Loading