docs(rules): enforce User Content Sovereignty and remove specific content bias from guidelines and skills
This commit is contained in:
@@ -8,6 +8,9 @@ description: >-
|
||||
|
||||
This skill guides the agent in implementing the custom Obsidian plugin and server-side ingestion workflow for publishing blog posts directly from an Obsidian vault.
|
||||
|
||||
> [!IMPORTANT]
|
||||
> **User Content Sovereignty:** User-authored content, post titles, tags, and formatting are the highest level of truth. The sync and normalization pipelines must preserve user-authored text verbatim and never overwrite or mutate user writing without explicit instruction.
|
||||
|
||||
---
|
||||
|
||||
## 1. System Architecture
|
||||
@@ -39,8 +42,8 @@ This skill guides the agent in implementing the custom Obsidian plugin and serve
|
||||
- **Request Body:**
|
||||
```json
|
||||
{
|
||||
"slug": "reverse-engineering-iot-firmware",
|
||||
"content": "---\ntitle: \"Reverse Engineering IoT Firmware\"\ndate: 2026-09-12\ntags: [\"#firmware\"]\n---\n\n## Content...",
|
||||
"slug": "sample-post",
|
||||
"content": "---\ntitle: \"Sample Post Title\"\ndate: 2026-09-12\ntags: [\"#tag1\"]\n---\n\n## Content...",
|
||||
"assets": [
|
||||
{
|
||||
"filename": "diagram.png",
|
||||
@@ -50,7 +53,7 @@ This skill guides the agent in implementing the custom Obsidian plugin and serve
|
||||
}
|
||||
```
|
||||
- **Response:**
|
||||
- `200 OK`: `{"status": "published", "path": "/posts/reverse-engineering-iot-firmware/"}`
|
||||
- `200 OK`: `{"status": "published", "path": "/posts/sample-post/"}`
|
||||
- `400 Bad Request`: `{"error": "Missing required frontmatter: title, date"}`
|
||||
|
||||
---
|
||||
@@ -77,7 +80,7 @@ This skill guides the agent in implementing the custom Obsidian plugin and serve
|
||||
## 4. Custom Obsidian Plugin Development
|
||||
|
||||
The Obsidian plugin runs inside Obsidian desktop/mobile and interacts with the Obsidian API:
|
||||
1. Registers a ribbon icon (e.g. `send` or `terminal`) and a command: `Publish Current Note to River Rooks Blog`.
|
||||
1. Registers a ribbon icon (e.g. `send` or `terminal`) and a command: `Publish Current Note to Blog`.
|
||||
2. Reads the active file:
|
||||
```typescript
|
||||
const activeFile = this.app.workspace.getActiveFile();
|
||||
@@ -88,7 +91,7 @@ The Obsidian plugin runs inside Obsidian desktop/mobile and interacts with the O
|
||||
const cache = this.app.metadataCache.getFileCache(activeFile);
|
||||
```
|
||||
4. Sends the HTTP payload to the configured blog server URL with the Bearer token.
|
||||
5. Displays an Obsidian `Notice('Published successfully to River Rooks Blog!')`.
|
||||
5. Displays an Obsidian `Notice('Published successfully to Blog!')`.
|
||||
|
||||
---
|
||||
|
||||
|
||||
Reference in New Issue
Block a user