tokencanopy 0.0.1__tar.gz

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.
@@ -0,0 +1,9 @@
1
+ .superpowers/
2
+
3
+ # Python build artifacts
4
+ dist/
5
+ build/
6
+ *.egg-info/
7
+ __pycache__/
8
+ .pytest_cache/
9
+
@@ -0,0 +1,51 @@
1
+ Metadata-Version: 2.4
2
+ Name: tokencanopy
3
+ Version: 0.0.1
4
+ Summary: Placeholder for the TokenCanopy workspace SDK. Full release coming soon — see https://tokencanopy.com.
5
+ Project-URL: Homepage, https://tokencanopy.com
6
+ Author: TokenCanopy
7
+ License: MIT
8
+ Keywords: agentdrive,agents,e2a,tokencanopy,workspace
9
+ Requires-Python: >=3.10
10
+ Provides-Extra: dev
11
+ Requires-Dist: pytest>=8.3; extra == 'dev'
12
+ Description-Content-Type: text/markdown
13
+
14
+ # tokencanopy
15
+
16
+ > **v0.0.1 is a name-claim placeholder.** Running `tokencanopy` today prints an
17
+ > info message and exits. The workspace SDK ships in a later release.
18
+
19
+ TokenCanopy is trusted infrastructure for agents that communicate and create.
20
+ It is the workspace layer — identity, workspaces, membership, and billing — over
21
+ two products:
22
+
23
+ - **[e2a](https://e2a.dev)** — the communication plane: authenticated agent
24
+ email, verified sender identity, conversation threading, safety screening, and
25
+ human review.
26
+ - **AgentDrive** — the durable-work plane: versioned artifacts, semantic
27
+ retrieval, provenance, sharing, and cross-agent handoff.
28
+
29
+ ## Using the products today
30
+
31
+ The TokenCanopy SDK is not released yet. Each product ships its own client, and
32
+ those remain the canonical interfaces:
33
+
34
+ ```bash
35
+ pip install e2a # Python SDK for e2a
36
+ npm install @e2a/sdk # TypeScript SDK for e2a
37
+ npm install -g @e2a/cli # e2a CLI
38
+ ```
39
+
40
+ When the TokenCanopy SDK lands, it will compose the product clients rather than
41
+ hide their contracts. Existing product APIs, credentials, and SDKs keep working
42
+ unchanged.
43
+
44
+ ## Links
45
+
46
+ - Website: <https://tokencanopy.com>
47
+ - e2a: <https://e2a.dev>
48
+
49
+ ## License
50
+
51
+ MIT
@@ -0,0 +1,38 @@
1
+ # tokencanopy
2
+
3
+ > **v0.0.1 is a name-claim placeholder.** Running `tokencanopy` today prints an
4
+ > info message and exits. The workspace SDK ships in a later release.
5
+
6
+ TokenCanopy is trusted infrastructure for agents that communicate and create.
7
+ It is the workspace layer — identity, workspaces, membership, and billing — over
8
+ two products:
9
+
10
+ - **[e2a](https://e2a.dev)** — the communication plane: authenticated agent
11
+ email, verified sender identity, conversation threading, safety screening, and
12
+ human review.
13
+ - **AgentDrive** — the durable-work plane: versioned artifacts, semantic
14
+ retrieval, provenance, sharing, and cross-agent handoff.
15
+
16
+ ## Using the products today
17
+
18
+ The TokenCanopy SDK is not released yet. Each product ships its own client, and
19
+ those remain the canonical interfaces:
20
+
21
+ ```bash
22
+ pip install e2a # Python SDK for e2a
23
+ npm install @e2a/sdk # TypeScript SDK for e2a
24
+ npm install -g @e2a/cli # e2a CLI
25
+ ```
26
+
27
+ When the TokenCanopy SDK lands, it will compose the product clients rather than
28
+ hide their contracts. Existing product APIs, credentials, and SDKs keep working
29
+ unchanged.
30
+
31
+ ## Links
32
+
33
+ - Website: <https://tokencanopy.com>
34
+ - e2a: <https://e2a.dev>
35
+
36
+ ## License
37
+
38
+ MIT
@@ -0,0 +1,33 @@
1
+ [project]
2
+ name = "tokencanopy"
3
+ version = "0.0.1"
4
+ description = "Placeholder for the TokenCanopy workspace SDK. Full release coming soon — see https://tokencanopy.com."
5
+ readme = "README.md"
6
+ requires-python = ">=3.10"
7
+ license = { text = "MIT" }
8
+ authors = [
9
+ { name = "TokenCanopy" }
10
+ ]
11
+ keywords = ["tokencanopy", "e2a", "agentdrive", "agents", "workspace"]
12
+ dependencies = []
13
+
14
+ [project.optional-dependencies]
15
+ dev = [
16
+ "pytest>=8.3",
17
+ ]
18
+
19
+ [project.scripts]
20
+ tokencanopy = "tokencanopy.__main__:main"
21
+
22
+ [project.urls]
23
+ Homepage = "https://tokencanopy.com"
24
+
25
+ [build-system]
26
+ requires = ["hatchling"]
27
+ build-backend = "hatchling.build"
28
+
29
+ [tool.hatch.build.targets.wheel]
30
+ packages = ["src/tokencanopy"]
31
+
32
+ [tool.pytest.ini_options]
33
+ testpaths = ["tests"]
@@ -0,0 +1,6 @@
1
+ """TokenCanopy — trusted infrastructure for agents that communicate and create.
2
+
3
+ v0.0.1 is a name-claim placeholder. The workspace SDK ships in a later release.
4
+ """
5
+
6
+ __version__ = "0.0.1"
@@ -0,0 +1,25 @@
1
+ """Entry point for the ``tokencanopy`` console script."""
2
+
3
+ import sys
4
+
5
+ from . import __version__
6
+
7
+ NOTICE = f"""tokencanopy {__version__} — name-claim placeholder.
8
+
9
+ The TokenCanopy workspace SDK is not released yet. TokenCanopy is the
10
+ workspace layer over two products:
11
+
12
+ e2a an inbox for your agents https://e2a.dev
13
+ AgentDrive a place to keep what they make
14
+
15
+ Docs and status: https://tokencanopy.com
16
+ """
17
+
18
+
19
+ def main() -> int:
20
+ sys.stdout.write(NOTICE)
21
+ return 0
22
+
23
+
24
+ if __name__ == "__main__":
25
+ raise SystemExit(main())
@@ -0,0 +1,27 @@
1
+ """The placeholder must stay importable and runnable while it holds the name."""
2
+
3
+ import subprocess
4
+ import sys
5
+
6
+ import tokencanopy
7
+ from tokencanopy.__main__ import main
8
+
9
+
10
+ def test_version_matches_metadata():
11
+ assert tokencanopy.__version__ == "0.0.1"
12
+
13
+
14
+ def test_main_exits_zero(capsys):
15
+ assert main() == 0
16
+ assert "tokencanopy" in capsys.readouterr().out
17
+
18
+
19
+ def test_module_is_executable():
20
+ result = subprocess.run(
21
+ [sys.executable, "-m", "tokencanopy"],
22
+ capture_output=True,
23
+ text=True,
24
+ check=False,
25
+ )
26
+ assert result.returncode == 0
27
+ assert "placeholder" in result.stdout