# agent_plan ## Description
Table Definition ```sql CREATE TABLE "agent_plan" ("id" varchar PRIMARY KEY NOT NULL, "threadId" varchar(128) NOT NULL, "revision" integer NOT NULL DEFAULT (1), "formatVersion" integer NOT NULL, "data" text NOT NULL, "closedAt" datetime(3), "createdAt" datetime(3) NOT NULL DEFAULT (STRFTIME('%Y-%m-%d %H:%M:%f', 'NOW')), "updatedAt" datetime(3) NOT NULL DEFAULT (STRFTIME('%Y-%m-%d %H:%M:%f', 'NOW')), CONSTRAINT "CHK_agent_plan_revision" CHECK ("revision" > 0), CONSTRAINT "CHK_agent_plan_format_version" CHECK ("formatVersion" > 0), CONSTRAINT "FK_a72ec0a4fc0c1d6aa1d7a177e32" FOREIGN KEY ("threadId") REFERENCES "agent_execution_threads" ("id") ON DELETE CASCADE) ```
## Columns | Name | Type | Default | Nullable | Children | Parents | Comment | | ---- | ---- | ------- | -------- | -------- | ------- | ------- | | closedAt | datetime(3) | | true | | | | | createdAt | datetime(3) | STRFTIME('%Y-%m-%d %H:%M:%f', 'NOW') | false | | | | | data | TEXT | | false | | | | | formatVersion | INTEGER | | false | | | | | id | varchar | | false | [agent_plan_history](agent_plan_history.md) | | | | revision | INTEGER | 1 | false | | | | | threadId | varchar(128) | | false | | [agent_execution_threads](agent_execution_threads.md) | | | updatedAt | datetime(3) | STRFTIME('%Y-%m-%d %H:%M:%f', 'NOW') | false | | | | ## Constraints | Name | Type | Definition | | ---- | ---- | ---------- | | - | CHECK | CHECK ("revision" > 0) | | - | CHECK | CHECK ("formatVersion" > 0) | | - (Foreign key ID: 0) | FOREIGN KEY | FOREIGN KEY (threadId) REFERENCES agent_execution_threads (id) ON UPDATE NO ACTION ON DELETE CASCADE MATCH NONE | | id | PRIMARY KEY | PRIMARY KEY (id) | | sqlite_autoindex_agent_plan_1 | PRIMARY KEY | PRIMARY KEY (id) | ## Indexes | Name | Definition | | ---- | ---------- | | IDX_a72ec0a4fc0c1d6aa1d7a177e3 | CREATE INDEX "IDX_a72ec0a4fc0c1d6aa1d7a177e3" ON "agent_plan" ("threadId") | | IDX_agent_plan_threadId | CREATE UNIQUE INDEX "IDX_agent_plan_threadId" ON "agent_plan" ("threadId") WHERE "closedAt" IS NULL | | sqlite_autoindex_agent_plan_1 | PRIMARY KEY (id) | ## Relations ```mermaid erDiagram "agent_plan_history" |o--|| "agent_plan" : "FOREIGN KEY (planId) REFERENCES agent_plan (id) ON UPDATE NO ACTION ON DELETE CASCADE MATCH NONE" "agent_plan" }o--|| "agent_execution_threads" : "FOREIGN KEY (threadId) REFERENCES agent_execution_threads (id) ON UPDATE NO ACTION ON DELETE CASCADE MATCH NONE" "agent_plan" { datetime_3_ closedAt datetime_3_ createdAt TEXT data INTEGER formatVersion varchar id PK INTEGER revision varchar_128_ threadId FK datetime_3_ updatedAt } "agent_plan_history" { datetime_3_ closedAt datetime_3_ createdAt TEXT data INTEGER formatVersion varchar planId PK INTEGER revision PK } "agent_execution_threads" { varchar_16_ accessScope varchar_36_ agentId FK varchar_255_ agentName datetime_3_ createdAt varchar_8_ emoji varchar_128_ id PK varchar ownerId FK varchar_36_ parentAgentId varchar_128_ parentThreadId varchar_255_ projectId FK INTEGER sessionNumber varchar_32_ taskId varchar_36_ taskVersionId FK varchar_255_ title INTEGER totalCompletionTokens REAL totalCost INTEGER totalDuration INTEGER totalPromptTokens datetime_3_ updatedAt } ``` --- > Generated by [tbls](https://github.com/k1LoW/tbls)