@hasna/contacts 0.8.1 → 0.9.1
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.
- package/README.md +10 -0
- package/dist/browser/cli.d.ts +4 -0
- package/dist/browser/cli.d.ts.map +1 -0
- package/dist/browser/identity.d.ts +3 -0
- package/dist/browser/identity.d.ts.map +1 -0
- package/dist/browser/install.d.ts +32 -0
- package/dist/browser/install.d.ts.map +1 -0
- package/dist/browser/native.d.ts +3 -0
- package/dist/browser/native.d.ts.map +1 -0
- package/dist/browser/native.js +822 -0
- package/dist/browser/protocol.d.ts +26 -0
- package/dist/browser/protocol.d.ts.map +1 -0
- package/dist/browser/values.d.ts +18 -0
- package/dist/browser/values.d.ts.map +1 -0
- package/dist/cli/commands/core.d.ts.map +1 -1
- package/dist/cli/index.js +408 -127
- package/dist/cli/status-domain.preload.d.ts +1 -1
- package/dist/cli/status-domain.preload.d.ts.map +1 -1
- package/dist/cli/status-fixture.d.ts +17 -0
- package/dist/cli/status-fixture.d.ts.map +1 -0
- package/dist/index.js +43 -4
- package/dist/lib/audience-contract.d.ts +9 -9
- package/dist/lib/compact-output.d.ts +67 -0
- package/dist/lib/compact-output.d.ts.map +1 -0
- package/dist/mcp/handlers/core.d.ts.map +1 -1
- package/dist/mcp/index.d.ts +2 -1
- package/dist/mcp/index.d.ts.map +1 -1
- package/dist/mcp/index.js +378 -194
- package/dist/mcp/profile.d.ts +8 -0
- package/dist/mcp/profile.d.ts.map +1 -0
- package/dist/mcp/register-tools.d.ts +3 -1
- package/dist/mcp/register-tools.d.ts.map +1 -1
- package/dist/mcp/storage-tools.d.ts +2 -1
- package/dist/mcp/storage-tools.d.ts.map +1 -1
- package/dist/mcp/tools.d.ts +7 -45
- package/dist/mcp/tools.d.ts.map +1 -1
- package/dist/sdk/index.js +1 -1
- package/dist/server/index.js +30 -16
- package/dist/server/pg-store.d.ts +1 -0
- package/dist/server/pg-store.d.ts.map +1 -1
- package/dist/store/index.d.ts.map +1 -1
- package/docs/chrome-autofill.md +45 -0
- package/extension/background.js +284 -0
- package/extension/content.js +392 -0
- package/extension/detect.js +228 -0
- package/extension/fill.js +112 -0
- package/extension/icons/128.png +0 -0
- package/extension/icons/16.png +0 -0
- package/extension/icons/32.png +0 -0
- package/extension/icons/48.png +0 -0
- package/extension/icons/icon.svg +7 -0
- package/extension/manifest.json +54 -0
- package/extension/popup.css +71 -0
- package/extension/popup.html +50 -0
- package/extension/popup.js +166 -0
- package/package.json +9 -5
package/README.md
CHANGED
|
@@ -11,6 +11,16 @@ Contact management for AI coding agents — CLI + MCP + authenticated HTTP API
|
|
|
11
11
|
npm install -g @hasna/contacts
|
|
12
12
|
```
|
|
13
13
|
|
|
14
|
+
## Chrome extension
|
|
15
|
+
|
|
16
|
+
The package ships a Chrome extension that fills name, email, phone, company
|
|
17
|
+
and address fields from your contacts — from the toolbar popup or from the
|
|
18
|
+
Contacts badge that appears inside detected form fields. It uses the same
|
|
19
|
+
hosted API and credential as the CLI. Run `contacts browser install`, load the
|
|
20
|
+
printed `extensionPath` unpacked in `chrome://extensions`, and see
|
|
21
|
+
[docs/chrome-autofill.md](docs/chrome-autofill.md) for how detection, the
|
|
22
|
+
picker and the security boundaries work.
|
|
23
|
+
|
|
14
24
|
## Configure the client
|
|
15
25
|
|
|
16
26
|
Every CLI, MCP, and package data operation uses one authenticated HTTPS `/v1`
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"cli.d.ts","sourceRoot":"","sources":["../../src/browser/cli.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAIzC,gGAAgG;AAChG,wBAAgB,uBAAuB,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI,CAsB9D"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"identity.d.ts","sourceRoot":"","sources":["../../src/browser/identity.ts"],"names":[],"mappings":"AACA,eAAO,MAAM,YAAY,qCAAqC,CAAC;AAC/D,eAAO,MAAM,SAAS,uBAAuB,CAAC"}
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
export declare function hostDirectories(home?: string, userDataDir?: string): string[];
|
|
2
|
+
export interface InstallOptions {
|
|
3
|
+
userDataDir?: string;
|
|
4
|
+
/** Test seam: the home directory that owns ~/.hasna/contacts and the Chrome profiles. */
|
|
5
|
+
home?: string;
|
|
6
|
+
/** Test seam: the package root that holds extension/ and dist/. */
|
|
7
|
+
root?: string;
|
|
8
|
+
/** Test seam: the absolute runtime used in the host shebang. */
|
|
9
|
+
execPath?: string;
|
|
10
|
+
}
|
|
11
|
+
export declare function installBrowser(options?: InstallOptions): {
|
|
12
|
+
ok: true;
|
|
13
|
+
extensionId: string;
|
|
14
|
+
extensionPath: string;
|
|
15
|
+
nativeHost: string;
|
|
16
|
+
nativeManifests: string[];
|
|
17
|
+
next: string;
|
|
18
|
+
};
|
|
19
|
+
export declare function browserStatus(options?: {
|
|
20
|
+
home?: string;
|
|
21
|
+
userDataDir?: string;
|
|
22
|
+
}): {
|
|
23
|
+
ok: true;
|
|
24
|
+
extensionId: string;
|
|
25
|
+
extensionInstalled: boolean;
|
|
26
|
+
nativeHostInstalled: boolean;
|
|
27
|
+
manifests: {
|
|
28
|
+
path: string;
|
|
29
|
+
present: boolean;
|
|
30
|
+
}[];
|
|
31
|
+
};
|
|
32
|
+
//# sourceMappingURL=install.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"install.d.ts","sourceRoot":"","sources":["../../src/browser/install.ts"],"names":[],"mappings":"AAgBA,wBAAgB,eAAe,CAAC,IAAI,SAAY,EAAE,WAAW,CAAC,EAAE,MAAM,GAAG,MAAM,EAAE,CAYhF;AAED,MAAM,WAAW,cAAc;IAC7B,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,yFAAyF;IACzF,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,mEAAmE;IACnE,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,gEAAgE;IAChE,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAED,wBAAgB,cAAc,CAAC,OAAO,GAAE,cAAmB;;;;;;;EAuC1D;AAED,wBAAgB,aAAa,CAAC,OAAO,GAAE;IAAE,IAAI,CAAC,EAAE,MAAM,CAAC;IAAC,WAAW,CAAC,EAAE,MAAM,CAAA;CAAO;;;;;;;;;EAclF"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"native.d.ts","sourceRoot":"","sources":["../../src/browser/native.ts"],"names":[],"mappings":""}
|