@insta-dev01/intclaw 1.0.6 → 1.0.8

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -2,7 +2,7 @@
2
2
  "id": "intclaw",
3
3
  "name": "IntClaw Plugin",
4
4
  "description": "OpenClaw plugin for IntClaw services - WebSocket-based channel integration for Community Platform, Message Channel, and Agent Collaboration Engine",
5
- "version": "1.0.6",
5
+ "version": "1.0.8",
6
6
  "kind": "channel",
7
7
  "channels": ["intclaw"],
8
8
  "configSchema": {
@@ -14,10 +14,6 @@
14
14
  "description": "Enable/disable the IntClaw channel",
15
15
  "default": true
16
16
  },
17
- "wsUrl": {
18
- "type": "string",
19
- "description": "WebSocket server URL for IntClaw connection (e.g., wss://api.intclaw.example.com/ws)"
20
- },
21
17
  "apiKey": {
22
18
  "type": "string",
23
19
  "description": "API key for authentication with IntClaw server"
@@ -28,112 +24,54 @@
28
24
  "default": 5000,
29
25
  "minimum": 1000
30
26
  },
31
- "dmPolicy": {
32
- "type": "string",
33
- "enum": ["pairing", "allowlist", "open", "disabled"],
34
- "description": "Direct message policy",
35
- "default": "pairing"
36
- },
37
- "allowFrom": {
38
- "type": "array",
39
- "description": "DM allowlist (peer IDs)",
40
- "items": {
41
- "type": "string"
42
- }
43
- },
44
- "groupPolicy": {
45
- "type": "string",
46
- "enum": ["allowlist", "open", "disabled"],
47
- "description": "Group message policy",
48
- "default": "allowlist"
27
+ "shadowInstance": {
28
+ "type": "boolean",
29
+ "description": "Enable shadow instance mode",
30
+ "default": false
49
31
  },
50
- "groupAllowFrom": {
32
+ "shadowDataAllowlist": {
51
33
  "type": "array",
52
- "description": "Group allowlist (peer IDs)",
34
+ "description": "Shadow data allowlist",
53
35
  "items": {
54
36
  "type": "string"
55
- }
56
- },
57
- "groups": {
58
- "type": "object",
59
- "description": "Per-group configuration",
60
- "additionalProperties": {
61
- "type": "object",
62
- "properties": {
63
- "allow": {
64
- "type": "boolean",
65
- "default": true
66
- },
67
- "requireMention": {
68
- "type": "boolean",
69
- "default": true
70
- }
71
- }
72
- }
73
- },
74
- "accounts": {
75
- "type": "object",
76
- "description": "Multi-account configuration",
77
- "additionalProperties": {
78
- "type": "object",
79
- "properties": {
80
- "enabled": {
81
- "type": "boolean",
82
- "default": true
83
- },
84
- "wsUrl": {
85
- "type": "string",
86
- "description": "Account-specific WebSocket URL"
87
- },
88
- "apiKey": {
89
- "type": "string",
90
- "description": "Account-specific API key"
91
- }
92
- }
93
- }
37
+ },
38
+ "default": [
39
+ "AGENTS.md",
40
+ "SOUL.md",
41
+ "IDENTITY.md",
42
+ "TOOLS.md",
43
+ "HEARTBEAT.md",
44
+ "BOOT.md",
45
+ "BOOTSTRAP.md",
46
+ "skills/",
47
+ "canvas/"
48
+ ]
94
49
  }
95
50
  }
96
51
  },
97
52
  "uiHints": {
98
- "wsUrl": {
99
- "label": "WebSocket Server URL",
100
- "placeholder": "wss://api.intclaw.example.com/ws",
101
- "helpText": "The WebSocket URL of your IntClaw server",
102
- "order": 1
103
- },
104
53
  "apiKey": {
105
54
  "label": "API Key",
106
55
  "placeholder": "Enter your API key",
107
56
  "helpText": "API key for authenticating with the IntClaw server",
108
57
  "sensitive": true,
109
- "order": 2
58
+ "order": 1
110
59
  },
111
60
  "reconnectInterval": {
112
61
  "label": "Reconnection Interval (ms)",
113
62
  "placeholder": "5000",
114
63
  "helpText": "How long to wait before reconnecting (in milliseconds)",
64
+ "order": 2
65
+ },
66
+ "shadowInstance": {
67
+ "label": "Shadow Instance",
68
+ "helpText": "Enable shadow instance mode",
115
69
  "order": 3
116
70
  },
117
- "dmPolicy": {
118
- "label": "Direct Message Policy",
119
- "helpText": "How to handle direct messages from unknown users",
120
- "options": {
121
- "pairing": "Require pairing approval",
122
- "allowlist": "Only allow listed users",
123
- "open": "Allow all users",
124
- "disabled": "Disable direct messages"
125
- },
71
+ "shadowDataAllowlist": {
72
+ "label": "Shadow Data Allowlist",
73
+ "helpText": "List of allowed shadow data paths",
126
74
  "order": 4
127
- },
128
- "groupPolicy": {
129
- "label": "Group Message Policy",
130
- "helpText": "How to handle group messages",
131
- "options": {
132
- "allowlist": "Only allow listed groups",
133
- "open": "Allow all groups",
134
- "disabled": "Disable group messages"
135
- },
136
- "order": 5
137
75
  }
138
76
  }
139
77
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@insta-dev01/intclaw",
3
- "version": "1.0.6",
3
+ "version": "1.0.8",
4
4
  "type": "module",
5
5
  "description": "OpenClaw plugin for IntClaw services - WebSocket-based channel integration for Community Platform, Message Channel, and Agent Collaboration Engine",
6
6
  "main": "src/index.js",
@@ -5,6 +5,7 @@
5
5
  */
6
6
 
7
7
  const CHANNEL_ID = 'intclaw';
8
+ const DEFAULT_WS_URL = 'wss://claw-message.int-os.com';
8
9
  const DEFAULT_RECONNECT_INTERVAL = 5000;
9
10
 
10
11
  /**
@@ -52,10 +53,6 @@ export class IntClawChannel {
52
53
  async start() {
53
54
  this.#log('info', 'Starting IntClaw channel...');
54
55
 
55
- if (!this.#config.wsUrl) {
56
- throw new Error('IntClaw channel requires wsUrl in configuration');
57
- }
58
-
59
56
  if (!this.#config.apiKey) {
60
57
  throw new Error('IntClaw channel requires apiKey in configuration');
61
58
  }
@@ -92,12 +89,13 @@ export class IntClawChannel {
92
89
  }
93
90
 
94
91
  try {
95
- this.#log('info', `Connecting to IntClaw server: ${this.#config.wsUrl}`);
92
+ const wsUrl = this.#config.wsUrl || DEFAULT_WS_URL;
93
+ this.#log('info', `Connecting to IntClaw server: ${wsUrl}`);
96
94
 
97
95
  // Import ws module dynamically
98
96
  const WebSocket = (await import('ws')).default;
99
97
 
100
- this.#ws = new WebSocket(this.#config.wsUrl, {
98
+ this.#ws = new WebSocket(wsUrl, {
101
99
  headers: {
102
100
  'X-API-Key': this.#config.apiKey,
103
101
  },
package/src/index.js CHANGED
@@ -30,9 +30,9 @@ export async function register(gateway, config) {
30
30
  return;
31
31
  }
32
32
 
33
- // Skip if required configuration is missing (plugin not configured yet)
33
+ // Skip if required configuration is missing
34
34
  if (!config?.wsUrl || !config?.apiKey) {
35
- console.log('[IntClaw] Plugin installed but not configured yet. Run "claw setup intclaw" to configure.');
35
+ console.log('[IntClaw] Configuration missing (wsUrl, apiKey)');
36
36
  return;
37
37
  }
38
38