+1
.env.example
+1
.env.example
+1
README.md
+1
README.md
···
52
52
- **`AUTOMATION_DESCRIPTION`**: a description of what your agent generally does on bluesky.
53
53
- **`DISCLOSURE_URL`**: a URL to a disclosure document of some kind, likely a longer version of your `AUTOMATION_DESCRIPTION`.
54
54
- **`RESPONSIBLE_PARTY_BSKY`**: the DID or bluesky handle of the responsible party
55
+
- **`EXTERNAL_SERVICES`**: a comma-separated list of external tools and services your agent relies on outside of Bluesky (e.g., "Letta, Railway, Google Gemini 2.5-pro"). This information is added to your agent's autonomy declaration record on the PDS and included in the agent's memory for transparency.
55
56
- **`PRESERVE_MEMORY_BLOCKS`**: a boolean for controlling if your agent's memory blocks can be overridden if you run `deno task mount` more than once. Setting this value to **`true`** will allow your agent's version of those memory blocks to persist if they already exist. This is false by default.
+4
-11
utils/declaration.ts
+4
-11
utils/declaration.ts
···
1
1
import { bsky } from "../utils/bsky.ts";
2
2
import type { AutonomyDeclarationRecord } from "./types.ts";
3
3
import { Lexicons } from "@atproto/lexicon";
4
+
import { agentContext } from "./agentContext.ts";
4
5
5
6
export const AUTONOMY_DECLARATION_LEXICON = {
6
7
"lexicon": 1,
···
103
104
const automationLevel = Deno.env.get("AUTOMATION_LEVEL")?.toLowerCase();
104
105
const projectDescription = Deno.env.get("PROJECT_DESCRIPTION");
105
106
const disclosureUrl = Deno.env.get("DISCLOSURE_URL");
106
-
const externalServicesEnv = Deno.env.get("EXTERNAL_SERVICES");
107
107
108
108
const responsiblePartyType = Deno.env.get("RESPONSIBLE_PARTY_TYPE")
109
109
?.toLowerCase();
···
132
132
declarationRecord.disclosureUrl = disclosureUrl.trim();
133
133
}
134
134
135
-
// Add external services if provided
136
-
if (externalServicesEnv?.trim()) {
137
-
const services = externalServicesEnv
138
-
.split(",")
139
-
.map((service) => service.trim())
140
-
.filter((service) => service.length > 0);
141
-
142
-
if (services.length > 0) {
143
-
declarationRecord.externalServices = services;
144
-
}
135
+
// Add external services from agentContext (already parsed and validated)
136
+
if (agentContext.externalServices) {
137
+
declarationRecord.externalServices = agentContext.externalServices;
145
138
}
146
139
147
140
// Build responsible party object if any fields are provided