pltr-cli 0.10.0__tar.gz → 0.12.0__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.
Files changed (164) hide show
  1. pltr_cli-0.12.0/.github/workflows/claude-code-review.yml +56 -0
  2. pltr_cli-0.12.0/.github/workflows/claude.yml +49 -0
  3. {pltr_cli-0.10.0 → pltr_cli-0.12.0}/.gitignore +7 -0
  4. {pltr_cli-0.10.0 → pltr_cli-0.12.0}/.pre-commit-config.yaml +1 -1
  5. {pltr_cli-0.10.0 → pltr_cli-0.12.0}/PKG-INFO +5 -3
  6. {pltr_cli-0.10.0 → pltr_cli-0.12.0}/README.md +3 -2
  7. pltr_cli-0.12.0/claude_skill/README.md +51 -0
  8. pltr_cli-0.12.0/claude_skill/SKILL.md +145 -0
  9. pltr_cli-0.12.0/claude_skill/reference/admin-commands.md +311 -0
  10. pltr_cli-0.12.0/claude_skill/reference/connectivity-commands.md +227 -0
  11. pltr_cli-0.12.0/claude_skill/reference/dataset-commands.md +154 -0
  12. pltr_cli-0.12.0/claude_skill/reference/filesystem-commands.md +425 -0
  13. pltr_cli-0.12.0/claude_skill/reference/mediasets-commands.md +222 -0
  14. pltr_cli-0.12.0/claude_skill/reference/ontology-commands.md +171 -0
  15. pltr_cli-0.12.0/claude_skill/reference/orchestration-commands.md +221 -0
  16. pltr_cli-0.12.0/claude_skill/reference/quick-start.md +136 -0
  17. pltr_cli-0.12.0/claude_skill/reference/sql-commands.md +156 -0
  18. pltr_cli-0.12.0/claude_skill/workflows/data-analysis.md +215 -0
  19. pltr_cli-0.12.0/claude_skill/workflows/data-pipeline.md +242 -0
  20. pltr_cli-0.12.0/claude_skill/workflows/permission-management.md +268 -0
  21. {pltr_cli-0.10.0 → pltr_cli-0.12.0}/docs/examples/gallery.md +8 -0
  22. pltr_cli-0.12.0/docs/migration/v2-pagination.md +478 -0
  23. pltr_cli-0.12.0/docs/pagination.md +494 -0
  24. pltr_cli-0.12.0/docs/user-guide/claude-skill.md +141 -0
  25. {pltr_cli-0.10.0 → pltr_cli-0.12.0}/docs/user-guide/commands.md +67 -0
  26. {pltr_cli-0.10.0 → pltr_cli-0.12.0}/docs/user-guide/troubleshooting.md +15 -0
  27. {pltr_cli-0.10.0 → pltr_cli-0.12.0}/pyproject.toml +2 -1
  28. pltr_cli-0.12.0/src/pltr/__init__.py +1 -0
  29. {pltr_cli-0.10.0 → pltr_cli-0.12.0}/src/pltr/cli.py +16 -0
  30. pltr_cli-0.12.0/src/pltr/commands/admin.py +1074 -0
  31. pltr_cli-0.12.0/src/pltr/commands/aip_agents.py +333 -0
  32. {pltr_cli-0.10.0 → pltr_cli-0.12.0}/src/pltr/commands/connectivity.py +309 -1
  33. pltr_cli-0.12.0/src/pltr/commands/cp.py +103 -0
  34. {pltr_cli-0.10.0 → pltr_cli-0.12.0}/src/pltr/commands/dataset.py +104 -4
  35. {pltr_cli-0.10.0 → pltr_cli-0.12.0}/src/pltr/commands/mediasets.py +176 -0
  36. {pltr_cli-0.10.0 → pltr_cli-0.12.0}/src/pltr/commands/ontology.py +137 -13
  37. {pltr_cli-0.10.0 → pltr_cli-0.12.0}/src/pltr/commands/orchestration.py +167 -11
  38. {pltr_cli-0.10.0 → pltr_cli-0.12.0}/src/pltr/commands/project.py +249 -0
  39. {pltr_cli-0.10.0 → pltr_cli-0.12.0}/src/pltr/commands/resource.py +452 -0
  40. {pltr_cli-0.10.0 → pltr_cli-0.12.0}/src/pltr/commands/sql.py +54 -7
  41. pltr_cli-0.12.0/src/pltr/commands/third_party_applications.py +82 -0
  42. pltr_cli-0.12.0/src/pltr/services/admin.py +631 -0
  43. pltr_cli-0.12.0/src/pltr/services/aip_agents.py +147 -0
  44. {pltr_cli-0.10.0 → pltr_cli-0.12.0}/src/pltr/services/base.py +104 -1
  45. {pltr_cli-0.10.0 → pltr_cli-0.12.0}/src/pltr/services/connectivity.py +139 -0
  46. pltr_cli-0.12.0/src/pltr/services/copy.py +391 -0
  47. {pltr_cli-0.10.0 → pltr_cli-0.12.0}/src/pltr/services/dataset.py +80 -9
  48. {pltr_cli-0.10.0 → pltr_cli-0.12.0}/src/pltr/services/mediasets.py +144 -9
  49. {pltr_cli-0.10.0 → pltr_cli-0.12.0}/src/pltr/services/ontology.py +119 -1
  50. {pltr_cli-0.10.0 → pltr_cli-0.12.0}/src/pltr/services/orchestration.py +133 -1
  51. {pltr_cli-0.10.0 → pltr_cli-0.12.0}/src/pltr/services/project.py +136 -0
  52. {pltr_cli-0.10.0 → pltr_cli-0.12.0}/src/pltr/services/resource.py +227 -0
  53. {pltr_cli-0.10.0 → pltr_cli-0.12.0}/src/pltr/services/sql.py +44 -20
  54. pltr_cli-0.12.0/src/pltr/services/third_party_applications.py +53 -0
  55. {pltr_cli-0.10.0 → pltr_cli-0.12.0}/src/pltr/utils/formatting.py +195 -1
  56. pltr_cli-0.12.0/src/pltr/utils/pagination.py +325 -0
  57. {pltr_cli-0.10.0 → pltr_cli-0.12.0}/tests/test_commands/test_admin.py +423 -19
  58. pltr_cli-0.12.0/tests/test_commands/test_aip_agents.py +458 -0
  59. {pltr_cli-0.10.0 → pltr_cli-0.12.0}/tests/test_commands/test_connectivity.py +400 -0
  60. {pltr_cli-0.10.0 → pltr_cli-0.12.0}/tests/test_commands/test_dataset.py +154 -0
  61. pltr_cli-0.12.0/tests/test_commands/test_mediasets.py +520 -0
  62. {pltr_cli-0.10.0 → pltr_cli-0.12.0}/tests/test_commands/test_ontology.py +121 -8
  63. {pltr_cli-0.10.0 → pltr_cli-0.12.0}/tests/test_commands/test_orchestration.py +165 -5
  64. {pltr_cli-0.10.0 → pltr_cli-0.12.0}/tests/test_commands/test_sql.py +9 -4
  65. pltr_cli-0.12.0/tests/test_commands/test_third_party_applications.py +255 -0
  66. {pltr_cli-0.10.0 → pltr_cli-0.12.0}/tests/test_services/test_admin.py +357 -0
  67. pltr_cli-0.12.0/tests/test_services/test_aip_agents.py +204 -0
  68. {pltr_cli-0.10.0 → pltr_cli-0.12.0}/tests/test_services/test_connectivity.py +208 -0
  69. pltr_cli-0.12.0/tests/test_services/test_copy.py +160 -0
  70. {pltr_cli-0.10.0 → pltr_cli-0.12.0}/tests/test_services/test_dataset.py +69 -0
  71. pltr_cli-0.12.0/tests/test_services/test_mediasets.py +371 -0
  72. {pltr_cli-0.10.0 → pltr_cli-0.12.0}/tests/test_services/test_ontology.py +79 -0
  73. {pltr_cli-0.10.0 → pltr_cli-0.12.0}/tests/test_services/test_orchestration.py +133 -0
  74. pltr_cli-0.12.0/tests/test_services/test_pagination_integration.py +167 -0
  75. {pltr_cli-0.10.0 → pltr_cli-0.12.0}/tests/test_services/test_project.py +192 -0
  76. {pltr_cli-0.10.0 → pltr_cli-0.12.0}/tests/test_services/test_resource.py +302 -0
  77. {pltr_cli-0.10.0 → pltr_cli-0.12.0}/tests/test_services/test_sql.py +10 -4
  78. pltr_cli-0.12.0/tests/test_utils/test_pagination.py +321 -0
  79. {pltr_cli-0.10.0 → pltr_cli-0.12.0}/uv.lock +325 -5
  80. pltr_cli-0.10.0/children.csv +0 -3
  81. pltr_cli-0.10.0/folder_info.json +0 -9
  82. pltr_cli-0.10.0/folders.json +0 -11
  83. pltr_cli-0.10.0/src/pltr/__init__.py +0 -1
  84. pltr_cli-0.10.0/src/pltr/commands/admin.py +0 -530
  85. pltr_cli-0.10.0/src/pltr/services/admin.py +0 -314
  86. {pltr_cli-0.10.0 → pltr_cli-0.12.0}/.github/workflows/ci.yml +0 -0
  87. {pltr_cli-0.10.0 → pltr_cli-0.12.0}/.github/workflows/publish.yml +0 -0
  88. {pltr_cli-0.10.0 → pltr_cli-0.12.0}/.github/workflows/test-publish.yml +0 -0
  89. {pltr_cli-0.10.0 → pltr_cli-0.12.0}/CHANGELOG.md +0 -0
  90. {pltr_cli-0.10.0 → pltr_cli-0.12.0}/CLAUDE.md +0 -0
  91. {pltr_cli-0.10.0 → pltr_cli-0.12.0}/LICENSE +0 -0
  92. {pltr_cli-0.10.0 → pltr_cli-0.12.0}/RELEASE.md +0 -0
  93. {pltr_cli-0.10.0 → pltr_cli-0.12.0}/docs/README.md +0 -0
  94. {pltr_cli-0.10.0 → pltr_cli-0.12.0}/docs/api/wrapper.md +0 -0
  95. {pltr_cli-0.10.0 → pltr_cli-0.12.0}/docs/examples/csv-upload.md +0 -0
  96. {pltr_cli-0.10.0 → pltr_cli-0.12.0}/docs/features/dataset-transactions.md +0 -0
  97. {pltr_cli-0.10.0 → pltr_cli-0.12.0}/docs/user-guide/aliases.md +0 -0
  98. {pltr_cli-0.10.0 → pltr_cli-0.12.0}/docs/user-guide/authentication.md +0 -0
  99. {pltr_cli-0.10.0 → pltr_cli-0.12.0}/docs/user-guide/quick-start.md +0 -0
  100. {pltr_cli-0.10.0 → pltr_cli-0.12.0}/docs/user-guide/workflows.md +0 -0
  101. {pltr_cli-0.10.0 → pltr_cli-0.12.0}/mypy.ini +0 -0
  102. {pltr_cli-0.10.0 → pltr_cli-0.12.0}/scripts/release.py +0 -0
  103. {pltr_cli-0.10.0 → pltr_cli-0.12.0}/src/pltr/__main__.py +0 -0
  104. {pltr_cli-0.10.0 → pltr_cli-0.12.0}/src/pltr/auth/__init__.py +0 -0
  105. {pltr_cli-0.10.0 → pltr_cli-0.12.0}/src/pltr/auth/base.py +0 -0
  106. {pltr_cli-0.10.0 → pltr_cli-0.12.0}/src/pltr/auth/manager.py +0 -0
  107. {pltr_cli-0.10.0 → pltr_cli-0.12.0}/src/pltr/auth/oauth.py +0 -0
  108. {pltr_cli-0.10.0 → pltr_cli-0.12.0}/src/pltr/auth/storage.py +0 -0
  109. {pltr_cli-0.10.0 → pltr_cli-0.12.0}/src/pltr/auth/token.py +0 -0
  110. {pltr_cli-0.10.0 → pltr_cli-0.12.0}/src/pltr/commands/__init__.py +0 -0
  111. {pltr_cli-0.10.0 → pltr_cli-0.12.0}/src/pltr/commands/alias.py +0 -0
  112. {pltr_cli-0.10.0 → pltr_cli-0.12.0}/src/pltr/commands/completion.py +0 -0
  113. {pltr_cli-0.10.0 → pltr_cli-0.12.0}/src/pltr/commands/configure.py +0 -0
  114. {pltr_cli-0.10.0 → pltr_cli-0.12.0}/src/pltr/commands/folder.py +0 -0
  115. {pltr_cli-0.10.0 → pltr_cli-0.12.0}/src/pltr/commands/resource_role.py +0 -0
  116. {pltr_cli-0.10.0 → pltr_cli-0.12.0}/src/pltr/commands/shell.py +0 -0
  117. {pltr_cli-0.10.0 → pltr_cli-0.12.0}/src/pltr/commands/space.py +0 -0
  118. {pltr_cli-0.10.0 → pltr_cli-0.12.0}/src/pltr/commands/verify.py +0 -0
  119. {pltr_cli-0.10.0 → pltr_cli-0.12.0}/src/pltr/config/__init__.py +0 -0
  120. {pltr_cli-0.10.0 → pltr_cli-0.12.0}/src/pltr/config/aliases.py +0 -0
  121. {pltr_cli-0.10.0 → pltr_cli-0.12.0}/src/pltr/config/profiles.py +0 -0
  122. {pltr_cli-0.10.0 → pltr_cli-0.12.0}/src/pltr/config/settings.py +0 -0
  123. {pltr_cli-0.10.0 → pltr_cli-0.12.0}/src/pltr/services/__init__.py +0 -0
  124. {pltr_cli-0.10.0 → pltr_cli-0.12.0}/src/pltr/services/folder.py +0 -0
  125. {pltr_cli-0.10.0 → pltr_cli-0.12.0}/src/pltr/services/resource_role.py +0 -0
  126. {pltr_cli-0.10.0 → pltr_cli-0.12.0}/src/pltr/services/space.py +0 -0
  127. {pltr_cli-0.10.0 → pltr_cli-0.12.0}/src/pltr/utils/__init__.py +0 -0
  128. {pltr_cli-0.10.0 → pltr_cli-0.12.0}/src/pltr/utils/alias_resolver.py +0 -0
  129. {pltr_cli-0.10.0 → pltr_cli-0.12.0}/src/pltr/utils/completion.py +0 -0
  130. {pltr_cli-0.10.0 → pltr_cli-0.12.0}/src/pltr/utils/progress.py +0 -0
  131. {pltr_cli-0.10.0 → pltr_cli-0.12.0}/tests/__init__.py +0 -0
  132. {pltr_cli-0.10.0 → pltr_cli-0.12.0}/tests/conftest.py +0 -0
  133. {pltr_cli-0.10.0 → pltr_cli-0.12.0}/tests/integration/README.md +0 -0
  134. {pltr_cli-0.10.0 → pltr_cli-0.12.0}/tests/integration/__init__.py +0 -0
  135. {pltr_cli-0.10.0 → pltr_cli-0.12.0}/tests/integration/conftest.py +0 -0
  136. {pltr_cli-0.10.0 → pltr_cli-0.12.0}/tests/integration/test_auth_flow.py +0 -0
  137. {pltr_cli-0.10.0 → pltr_cli-0.12.0}/tests/integration/test_cli_integration.py +0 -0
  138. {pltr_cli-0.10.0 → pltr_cli-0.12.0}/tests/integration/test_data_workflows.py +0 -0
  139. {pltr_cli-0.10.0 → pltr_cli-0.12.0}/tests/integration/test_data_workflows_simple.py +0 -0
  140. {pltr_cli-0.10.0 → pltr_cli-0.12.0}/tests/integration/test_simple_integration.py +0 -0
  141. {pltr_cli-0.10.0 → pltr_cli-0.12.0}/tests/test_auth/__init__.py +0 -0
  142. {pltr_cli-0.10.0 → pltr_cli-0.12.0}/tests/test_auth/test_base.py +0 -0
  143. {pltr_cli-0.10.0 → pltr_cli-0.12.0}/tests/test_auth/test_manager.py +0 -0
  144. {pltr_cli-0.10.0 → pltr_cli-0.12.0}/tests/test_auth/test_oauth.py +0 -0
  145. {pltr_cli-0.10.0 → pltr_cli-0.12.0}/tests/test_auth/test_storage.py +0 -0
  146. {pltr_cli-0.10.0 → pltr_cli-0.12.0}/tests/test_auth/test_token.py +0 -0
  147. {pltr_cli-0.10.0 → pltr_cli-0.12.0}/tests/test_commands/__init__.py +0 -0
  148. {pltr_cli-0.10.0 → pltr_cli-0.12.0}/tests/test_commands/test_alias.py +0 -0
  149. {pltr_cli-0.10.0 → pltr_cli-0.12.0}/tests/test_commands/test_completion.py +0 -0
  150. {pltr_cli-0.10.0 → pltr_cli-0.12.0}/tests/test_commands/test_folder.py +0 -0
  151. {pltr_cli-0.10.0 → pltr_cli-0.12.0}/tests/test_commands/test_shell.py +0 -0
  152. {pltr_cli-0.10.0 → pltr_cli-0.12.0}/tests/test_commands/test_verify_simple.py +0 -0
  153. {pltr_cli-0.10.0 → pltr_cli-0.12.0}/tests/test_config/__init__.py +0 -0
  154. {pltr_cli-0.10.0 → pltr_cli-0.12.0}/tests/test_config/test_aliases.py +0 -0
  155. {pltr_cli-0.10.0 → pltr_cli-0.12.0}/tests/test_config/test_profiles.py +0 -0
  156. {pltr_cli-0.10.0 → pltr_cli-0.12.0}/tests/test_config/test_settings.py +0 -0
  157. {pltr_cli-0.10.0 → pltr_cli-0.12.0}/tests/test_services/__init__.py +0 -0
  158. {pltr_cli-0.10.0 → pltr_cli-0.12.0}/tests/test_services/test_base.py +0 -0
  159. {pltr_cli-0.10.0 → pltr_cli-0.12.0}/tests/test_services/test_dataset_transactions.py +0 -0
  160. {pltr_cli-0.10.0 → pltr_cli-0.12.0}/tests/test_services/test_folder.py +0 -0
  161. {pltr_cli-0.10.0 → pltr_cli-0.12.0}/tests/test_services/test_resource_role.py +0 -0
  162. {pltr_cli-0.10.0 → pltr_cli-0.12.0}/tests/test_services/test_space.py +0 -0
  163. {pltr_cli-0.10.0 → pltr_cli-0.12.0}/tests/test_utils/__init__.py +0 -0
  164. {pltr_cli-0.10.0 → pltr_cli-0.12.0}/tests/test_utils/test_alias_resolver.py +0 -0
@@ -0,0 +1,56 @@
1
+ name: Claude Code Review
2
+
3
+ on:
4
+ pull_request:
5
+ types: [opened, synchronize]
6
+ # Optional: Only run on specific file changes
7
+ # paths:
8
+ # - "src/**/*.ts"
9
+ # - "src/**/*.tsx"
10
+ # - "src/**/*.js"
11
+ # - "src/**/*.jsx"
12
+
13
+ jobs:
14
+ claude-review:
15
+ # Optional: Filter by PR author
16
+ # if: |
17
+ # github.event.pull_request.user.login == 'external-contributor' ||
18
+ # github.event.pull_request.user.login == 'new-developer' ||
19
+ # github.event.pull_request.author_association == 'FIRST_TIME_CONTRIBUTOR'
20
+
21
+ runs-on: ubuntu-latest
22
+ permissions:
23
+ contents: read
24
+ pull-requests: read
25
+ issues: read
26
+ id-token: write
27
+
28
+ steps:
29
+ - name: Checkout repository
30
+ uses: actions/checkout@v4
31
+ with:
32
+ fetch-depth: 1
33
+
34
+ - name: Run Claude Code Review
35
+ id: claude-review
36
+ uses: anthropics/claude-code-action@v1
37
+ with:
38
+ claude_code_oauth_token: ${{ secrets.CLAUDE_CODE_OAUTH_TOKEN }}
39
+ prompt: |
40
+ REPO: ${{ github.repository }}
41
+ PR NUMBER: ${{ github.event.pull_request.number }}
42
+
43
+ Please review this pull request and provide feedback on:
44
+ - Code quality and best practices
45
+ - Potential bugs or issues
46
+ - Performance considerations
47
+ - Security concerns
48
+ - Test coverage
49
+
50
+ Use the repository's CLAUDE.md for guidance on style and conventions. Be constructive and helpful in your feedback.
51
+
52
+ Use `gh pr comment` with your Bash tool to leave your review as a comment on the PR.
53
+
54
+ # See https://github.com/anthropics/claude-code-action/blob/main/docs/usage.md
55
+ # or https://docs.claude.com/en/docs/claude-code/cli-reference for available options
56
+ claude_args: '--allowed-tools "Bash(gh issue view:*),Bash(gh search:*),Bash(gh issue list:*),Bash(gh pr comment:*),Bash(gh pr diff:*),Bash(gh pr view:*),Bash(gh pr list:*)"'
@@ -0,0 +1,49 @@
1
+ name: Claude Code
2
+
3
+ on:
4
+ issue_comment:
5
+ types: [created]
6
+ pull_request_review_comment:
7
+ types: [created]
8
+ issues:
9
+ types: [opened, assigned]
10
+ pull_request_review:
11
+ types: [submitted]
12
+
13
+ jobs:
14
+ claude:
15
+ if: |
16
+ (github.event_name == 'issue_comment' && contains(github.event.comment.body, '@claude')) ||
17
+ (github.event_name == 'pull_request_review_comment' && contains(github.event.comment.body, '@claude')) ||
18
+ (github.event_name == 'pull_request_review' && contains(github.event.review.body, '@claude')) ||
19
+ (github.event_name == 'issues' && (contains(github.event.issue.body, '@claude') || contains(github.event.issue.title, '@claude')))
20
+ runs-on: ubuntu-latest
21
+ permissions:
22
+ contents: read
23
+ pull-requests: read
24
+ issues: read
25
+ id-token: write
26
+ actions: read # Required for Claude to read CI results on PRs
27
+ steps:
28
+ - name: Checkout repository
29
+ uses: actions/checkout@v4
30
+ with:
31
+ fetch-depth: 1
32
+
33
+ - name: Run Claude Code
34
+ id: claude
35
+ uses: anthropics/claude-code-action@v1
36
+ with:
37
+ claude_code_oauth_token: ${{ secrets.CLAUDE_CODE_OAUTH_TOKEN }}
38
+
39
+ # This is an optional setting that allows Claude to read CI results on PRs
40
+ additional_permissions: |
41
+ actions: read
42
+
43
+ # Optional: Give a custom prompt to Claude. If this is not specified, Claude will perform the instructions specified in the comment that tagged it.
44
+ # prompt: 'Update the pull request description to include a summary of changes.'
45
+
46
+ # Optional: Add claude_args to customize behavior and configuration
47
+ # See https://github.com/anthropics/claude-code-action/blob/main/docs/usage.md
48
+ # or https://docs.claude.com/en/docs/claude-code/cli-reference for available options
49
+ # claude_args: '--allowed-tools Bash(gh pr:*)'
@@ -144,5 +144,12 @@ cython_debug/
144
144
  config.ini
145
145
  credentials.json
146
146
 
147
+ # Test data files (avoid committing test outputs to root)
148
+ /children.csv
149
+ /folder_info.json
150
+ /folders.json
151
+ /*.csv
152
+ /*.json
153
+
147
154
  # ruff
148
155
  .ruff_cache/
@@ -41,7 +41,7 @@ repos:
41
41
 
42
42
  # Python code formatting with Ruff
43
43
  - repo: https://github.com/astral-sh/ruff-pre-commit
44
- rev: v0.1.9
44
+ rev: v0.12.8
45
45
  hooks:
46
46
  - id: ruff
47
47
  name: Ruff linter
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: pltr-cli
3
- Version: 0.10.0
3
+ Version: 0.12.0
4
4
  Summary: Command-line interface for Palantir Foundry APIs
5
5
  Project-URL: Homepage, https://github.com/anjor/pltr-cli
6
6
  Project-URL: Repository, https://github.com/anjor/pltr-cli
@@ -29,6 +29,7 @@ Requires-Python: >=3.9
29
29
  Requires-Dist: click-repl>=0.3.0
30
30
  Requires-Dist: foundry-platform-sdk>=1.27.0
31
31
  Requires-Dist: keyring>=25.6.0
32
+ Requires-Dist: pandas>=2.0.0
32
33
  Requires-Dist: python-dotenv>=1.1.1
33
34
  Requires-Dist: requests>=2.32.4
34
35
  Requires-Dist: rich>=14.1.0
@@ -37,7 +38,7 @@ Description-Content-Type: text/markdown
37
38
 
38
39
  # pltr-cli
39
40
 
40
- A comprehensive command-line interface for Palantir Foundry APIs, providing 80+ commands for data analysis, dataset management, ontology operations, orchestration, SQL queries, folder management, and administrative tasks.
41
+ A comprehensive command-line interface for Palantir Foundry APIs, providing 81+ commands for data analysis, dataset management, ontology operations, orchestration, SQL queries, folder management, and administrative tasks.
41
42
 
42
43
  ## Overview
43
44
 
@@ -215,6 +216,7 @@ pltr connectivity import table <conn-rid> <table-name> <dataset-rid> --execute
215
216
  # Administrative
216
217
  pltr admin user current # Current user info
217
218
  pltr admin user list # List users
219
+ pltr third-party-apps get <rid> # Get third-party application details
218
220
 
219
221
  # Interactive & Tools
220
222
  pltr shell # Interactive mode
@@ -470,7 +472,7 @@ See **[API Wrapper Documentation](docs/api/wrapper.md)** for detailed architectu
470
472
 
471
473
  pltr-cli is **production-ready** with comprehensive features:
472
474
 
473
- - ✅ **80+ Commands** across 10 command groups
475
+ - ✅ **81+ Commands** across 11 command groups
474
476
  - ✅ **273 Unit Tests** with 67% code coverage
475
477
  - ✅ **Published on PyPI** with automated releases
476
478
  - ✅ **Cross-Platform** support (Windows, macOS, Linux)
@@ -1,6 +1,6 @@
1
1
  # pltr-cli
2
2
 
3
- A comprehensive command-line interface for Palantir Foundry APIs, providing 80+ commands for data analysis, dataset management, ontology operations, orchestration, SQL queries, folder management, and administrative tasks.
3
+ A comprehensive command-line interface for Palantir Foundry APIs, providing 81+ commands for data analysis, dataset management, ontology operations, orchestration, SQL queries, folder management, and administrative tasks.
4
4
 
5
5
  ## Overview
6
6
 
@@ -178,6 +178,7 @@ pltr connectivity import table <conn-rid> <table-name> <dataset-rid> --execute
178
178
  # Administrative
179
179
  pltr admin user current # Current user info
180
180
  pltr admin user list # List users
181
+ pltr third-party-apps get <rid> # Get third-party application details
181
182
 
182
183
  # Interactive & Tools
183
184
  pltr shell # Interactive mode
@@ -433,7 +434,7 @@ See **[API Wrapper Documentation](docs/api/wrapper.md)** for detailed architectu
433
434
 
434
435
  pltr-cli is **production-ready** with comprehensive features:
435
436
 
436
- - ✅ **80+ Commands** across 10 command groups
437
+ - ✅ **81+ Commands** across 11 command groups
437
438
  - ✅ **273 Unit Tests** with 67% code coverage
438
439
  - ✅ **Published on PyPI** with automated releases
439
440
  - ✅ **Cross-Platform** support (Windows, macOS, Linux)
@@ -0,0 +1,51 @@
1
+ # pltr-cli Claude Code Skill
2
+
3
+ This directory contains a Claude Code skill for working with Palantir Foundry using the pltr-cli.
4
+
5
+ ## Installation
6
+
7
+ ### Use Within This Repository
8
+
9
+ The skill is automatically available when using Claude Code in this repository.
10
+
11
+ ### Install Globally
12
+
13
+ ```bash
14
+ cp -r claude_skill ~/.claude/skills/pltr
15
+ ```
16
+
17
+ ## Structure
18
+
19
+ ```
20
+ claude_skill/
21
+ ├── SKILL.md # Main skill definition
22
+ ├── reference/ # Command references (loaded on-demand)
23
+ │ ├── quick-start.md # Setup and authentication
24
+ │ ├── dataset-commands.md # Dataset operations
25
+ │ ├── sql-commands.md # SQL queries
26
+ │ ├── orchestration-commands.md # Builds, jobs, schedules
27
+ │ ├── ontology-commands.md # Ontology operations
28
+ │ ├── admin-commands.md # User/group management
29
+ │ ├── filesystem-commands.md # Folders, spaces, projects
30
+ │ ├── connectivity-commands.md # Connections, imports
31
+ │ └── mediasets-commands.md # Media operations
32
+ └── workflows/ # Common patterns
33
+ ├── data-analysis.md # Analysis workflows
34
+ ├── data-pipeline.md # ETL and pipelines
35
+ └── permission-management.md # Access control
36
+ ```
37
+
38
+ ## Usage
39
+
40
+ Ask Claude Code questions about Foundry tasks:
41
+
42
+ - "How do I query a dataset?"
43
+ - "Help me set up a daily build schedule"
44
+ - "Grant viewer access to john.doe on my dataset"
45
+ - "Execute SQL query to count rows"
46
+
47
+ Claude will automatically use this skill to provide accurate guidance.
48
+
49
+ ## Documentation
50
+
51
+ See [docs/user-guide/claude-skill.md](../docs/user-guide/claude-skill.md) for full documentation.
@@ -0,0 +1,145 @@
1
+ ---
2
+ name: pltr-cli
3
+ description: Helps you work with Palantir Foundry using the pltr CLI. Use this when you need to query datasets, manage orchestration builds, work with ontologies, run SQL queries, manage folders/spaces/projects, copy datasets, or perform admin operations in Foundry. Triggers: Foundry, pltr, dataset, SQL query, ontology, build, schedule, RID.
4
+ ---
5
+
6
+ # pltr-cli: Palantir Foundry CLI
7
+
8
+ This skill helps you use the pltr-cli to interact with Palantir Foundry effectively.
9
+
10
+ ## Compatibility
11
+
12
+ - **Skill version**: 1.0.0
13
+ - **pltr-cli version**: 0.11.0+
14
+ - **Python**: 3.9, 3.10, 3.11, 3.12
15
+ - **Dependencies**: foundry-platform-sdk >= 1.27.0
16
+
17
+ ## Overview
18
+
19
+ pltr-cli is a comprehensive CLI with 80+ commands for:
20
+ - **Dataset operations**: Get info, list files, download files, manage branches and transactions
21
+ - **SQL queries**: Execute queries, export results, manage async queries
22
+ - **Ontology**: List ontologies, object types, objects, execute actions and queries
23
+ - **Orchestration**: Manage builds, jobs, and schedules
24
+ - **Filesystem**: Folders, spaces, projects, resources
25
+ - **Admin**: User, group, role management
26
+ - **Connectivity**: External connections and data imports
27
+ - **MediaSets**: Media file management
28
+
29
+ ## Critical Concepts
30
+
31
+ ### RID-Based API
32
+ The Foundry API is **RID-based** (Resource Identifier). Most commands require RIDs:
33
+ - **Datasets**: `ri.foundry.main.dataset.{uuid}`
34
+ - **Folders**: `ri.compass.main.folder.{uuid}` (root: `ri.compass.main.folder.0`)
35
+ - **Builds**: `ri.orchestration.main.build.{uuid}`
36
+ - **Schedules**: `ri.orchestration.main.schedule.{uuid}`
37
+ - **Ontologies**: `ri.ontology.main.ontology.{uuid}`
38
+
39
+ Users must know RIDs in advance (from Foundry web UI or previous API calls).
40
+
41
+ ### Authentication
42
+ Before using any command, ensure authentication is configured:
43
+ ```bash
44
+ # Configure interactively
45
+ pltr configure configure
46
+
47
+ # Or use environment variables
48
+ export FOUNDRY_TOKEN="your-token"
49
+ export FOUNDRY_HOST="foundry.company.com"
50
+
51
+ # Verify connection
52
+ pltr verify
53
+ ```
54
+
55
+ ### Output Formats
56
+ All commands support multiple output formats:
57
+ ```bash
58
+ pltr <command> --format table # Default: Rich table
59
+ pltr <command> --format json # JSON output
60
+ pltr <command> --format csv # CSV format
61
+ pltr <command> --output file.csv # Save to file
62
+ ```
63
+
64
+ ### Profile Selection
65
+ Use `--profile` to switch between Foundry instances:
66
+ ```bash
67
+ pltr <command> --profile production
68
+ pltr <command> --profile development
69
+ ```
70
+
71
+ ## Reference Files
72
+
73
+ Load these files based on the user's task:
74
+
75
+ | Task Type | Reference File |
76
+ |-----------|----------------|
77
+ | Setup, authentication, getting started | `reference/quick-start.md` |
78
+ | Dataset operations (get, files, branches, transactions) | `reference/dataset-commands.md` |
79
+ | SQL queries | `reference/sql-commands.md` |
80
+ | Builds, jobs, schedules | `reference/orchestration-commands.md` |
81
+ | Ontologies, objects, actions | `reference/ontology-commands.md` |
82
+ | Users, groups, roles, orgs | `reference/admin-commands.md` |
83
+ | Folders, spaces, projects, resources, permissions | `reference/filesystem-commands.md` |
84
+ | Connections, imports | `reference/connectivity-commands.md` |
85
+ | Media sets, media items | `reference/mediasets-commands.md` |
86
+
87
+ ## Workflow Files
88
+
89
+ For common multi-step tasks:
90
+
91
+ | Workflow | File |
92
+ |----------|------|
93
+ | Data exploration, SQL analysis, ontology queries | `workflows/data-analysis.md` |
94
+ | ETL pipelines, scheduled jobs, data quality | `workflows/data-pipeline.md` |
95
+ | Setting up permissions, resource roles, access control | `workflows/permission-management.md` |
96
+
97
+ ## Common Commands Quick Reference
98
+
99
+ ```bash
100
+ # Verify setup
101
+ pltr verify
102
+
103
+ # Current user info
104
+ pltr admin user current
105
+
106
+ # Execute SQL query
107
+ pltr sql execute "SELECT * FROM my_table LIMIT 10"
108
+
109
+ # Get dataset info
110
+ pltr dataset get ri.foundry.main.dataset.abc123
111
+
112
+ # List files in dataset
113
+ pltr dataset files list ri.foundry.main.dataset.abc123
114
+
115
+ # Download file from dataset
116
+ pltr dataset files get ri.foundry.main.dataset.abc123 "/path/file.csv" "./local.csv"
117
+
118
+ # Copy dataset to another folder
119
+ pltr cp ri.foundry.main.dataset.abc123 ri.compass.main.folder.target456
120
+
121
+ # List folder contents
122
+ pltr folder list ri.compass.main.folder.0 # root folder
123
+
124
+ # Search builds
125
+ pltr orchestration builds search
126
+
127
+ # Interactive shell mode
128
+ pltr shell
129
+ ```
130
+
131
+ ## Best Practices
132
+
133
+ 1. **Always verify authentication first**: Run `pltr verify` before starting work
134
+ 2. **Use appropriate output format**: JSON for programmatic use, CSV for spreadsheets, table for readability
135
+ 3. **Use async for large queries**: `pltr sql submit` + `pltr sql wait` for long-running queries
136
+ 4. **Export results**: Use `--output` to save results for further analysis
137
+ 5. **Use shell mode for exploration**: `pltr shell` provides tab completion and history
138
+
139
+ ## Getting Help
140
+
141
+ ```bash
142
+ pltr --help # All commands
143
+ pltr <command> --help # Command help
144
+ pltr <command> <sub> --help # Subcommand help
145
+ ```
@@ -0,0 +1,311 @@
1
+ # Admin Commands
2
+
3
+ User, group, role, and organization management. **Requires admin permissions**.
4
+
5
+ ## User Commands
6
+
7
+ ### List Users
8
+
9
+ ```bash
10
+ pltr admin user list [--page-size N] [--page-token TEXT] [--format FORMAT]
11
+
12
+ # Example
13
+ pltr admin user list --page-size 50 --format csv --output users.csv
14
+ ```
15
+
16
+ ### Get User Info
17
+
18
+ ```bash
19
+ pltr admin user get USER_ID [--format FORMAT]
20
+
21
+ # Example
22
+ pltr admin user get john.doe@company.com
23
+ ```
24
+
25
+ ### Current User
26
+
27
+ ```bash
28
+ pltr admin user current [--format FORMAT]
29
+
30
+ # Example
31
+ pltr admin user current --format json
32
+ ```
33
+
34
+ ### Search Users
35
+
36
+ ```bash
37
+ pltr admin user search QUERY [--page-size N] [--format FORMAT]
38
+
39
+ # Example
40
+ pltr admin user search "john" --page-size 20
41
+ ```
42
+
43
+ ### Get User Markings/Permissions
44
+
45
+ ```bash
46
+ pltr admin user markings USER_ID [--format FORMAT]
47
+
48
+ # Example
49
+ pltr admin user markings john.doe@company.com
50
+ ```
51
+
52
+ ### Revoke User Tokens
53
+
54
+ ```bash
55
+ pltr admin user revoke-tokens USER_ID [--confirm]
56
+
57
+ # Example
58
+ pltr admin user revoke-tokens john.doe@company.com --confirm
59
+ ```
60
+
61
+ ### Delete User
62
+
63
+ ```bash
64
+ pltr admin user delete USER_ID [--confirm]
65
+
66
+ # Example
67
+ pltr admin user delete john.doe@company.com --confirm
68
+ ```
69
+
70
+ ### Batch Get Users
71
+
72
+ ```bash
73
+ pltr admin user batch-get USER_IDS...
74
+
75
+ # Max 500 user IDs
76
+
77
+ # Example
78
+ pltr admin user batch-get user1@company.com user2@company.com user3@company.com
79
+ ```
80
+
81
+ ## Group Commands
82
+
83
+ ### List Groups
84
+
85
+ ```bash
86
+ pltr admin group list [--format FORMAT]
87
+
88
+ # Example
89
+ pltr admin group list
90
+ ```
91
+
92
+ ### Get Group Info
93
+
94
+ ```bash
95
+ pltr admin group get GROUP_ID [--format FORMAT]
96
+
97
+ # Example
98
+ pltr admin group get engineering-team
99
+ ```
100
+
101
+ ### Search Groups
102
+
103
+ ```bash
104
+ pltr admin group search QUERY [--format FORMAT]
105
+
106
+ # Example
107
+ pltr admin group search "engineering"
108
+ ```
109
+
110
+ ### Create Group
111
+
112
+ ```bash
113
+ pltr admin group create NAME [--description TEXT] [--org-rid TEXT]
114
+
115
+ # Example
116
+ pltr admin group create "Data Science Team" --description "Team for ML and analytics"
117
+ ```
118
+
119
+ ### Delete Group
120
+
121
+ ```bash
122
+ pltr admin group delete GROUP_ID [--confirm]
123
+
124
+ # Example
125
+ pltr admin group delete old-team --confirm
126
+ ```
127
+
128
+ ### Batch Get Groups
129
+
130
+ ```bash
131
+ pltr admin group batch-get GROUP_IDS...
132
+
133
+ # Max 500 group IDs
134
+
135
+ # Example
136
+ pltr admin group batch-get engineering-team data-team security-team
137
+ ```
138
+
139
+ ## Role Commands
140
+
141
+ ### Get Role Info
142
+
143
+ ```bash
144
+ pltr admin role get ROLE_ID [--format FORMAT]
145
+
146
+ # Example
147
+ pltr admin role get admin-role
148
+ ```
149
+
150
+ ### Batch Get Roles
151
+
152
+ ```bash
153
+ pltr admin role batch-get ROLE_IDS...
154
+
155
+ # Max 500 role IDs
156
+
157
+ # Example
158
+ pltr admin role batch-get admin-role editor-role viewer-role
159
+ ```
160
+
161
+ ## Organization Commands
162
+
163
+ ### Get Organization Info
164
+
165
+ ```bash
166
+ pltr admin org get ORGANIZATION_ID [--format FORMAT]
167
+
168
+ # Example
169
+ pltr admin org get my-organization
170
+ ```
171
+
172
+ ### Create Organization
173
+
174
+ ```bash
175
+ pltr admin org create NAME --enrollment-rid ENROLLMENT_RID [OPTIONS]
176
+
177
+ # Options:
178
+ # --admin-id TEXT Admin user IDs (can specify multiple)
179
+
180
+ # Example
181
+ pltr admin org create "New Organization" --enrollment-rid ri.enrollment.main.123 \
182
+ --admin-id admin1@company.com --admin-id admin2@company.com
183
+ ```
184
+
185
+ ### Replace Organization
186
+
187
+ ```bash
188
+ pltr admin org replace ORGANIZATION_RID NAME [OPTIONS]
189
+
190
+ # Options:
191
+ # --description TEXT New organization description
192
+ # --confirm Skip confirmation prompt
193
+
194
+ # Example
195
+ pltr admin org replace ri.compass.main.org.123 "Updated Org Name" \
196
+ --description "Updated description" --confirm
197
+ ```
198
+
199
+ ### List Available Roles for Organization
200
+
201
+ ```bash
202
+ pltr admin org available-roles ORGANIZATION_RID [--page-size N] [--page-token TEXT]
203
+
204
+ # Example
205
+ pltr admin org available-roles ri.compass.main.org.123 --page-size 50
206
+ ```
207
+
208
+ ## Marking Commands
209
+
210
+ ### List Markings
211
+
212
+ ```bash
213
+ pltr admin marking list [--page-size N] [--page-token TEXT] [--format FORMAT]
214
+
215
+ # Example
216
+ pltr admin marking list --format json --output markings.json
217
+ ```
218
+
219
+ ### Get Marking Info
220
+
221
+ ```bash
222
+ pltr admin marking get MARKING_ID [--format FORMAT]
223
+
224
+ # Example
225
+ pltr admin marking get marking-confidential
226
+ ```
227
+
228
+ ### Create Marking
229
+
230
+ ```bash
231
+ pltr admin marking create NAME [OPTIONS]
232
+
233
+ # Options:
234
+ # --description TEXT Marking description
235
+ # --category-id TEXT Category ID for the marking
236
+
237
+ # Example
238
+ pltr admin marking create "Confidential" --description "Confidential data marking"
239
+ ```
240
+
241
+ ### Replace Marking
242
+
243
+ ```bash
244
+ pltr admin marking replace MARKING_ID NAME [OPTIONS]
245
+
246
+ # Options:
247
+ # --description TEXT New marking description
248
+ # --confirm Skip confirmation prompt
249
+
250
+ # Example
251
+ pltr admin marking replace marking-123 "Updated Name" --description "New description" --confirm
252
+ ```
253
+
254
+ ### Batch Get Markings
255
+
256
+ ```bash
257
+ pltr admin marking batch-get MARKING_IDS...
258
+
259
+ # Max 500 marking IDs
260
+
261
+ # Example
262
+ pltr admin marking batch-get marking-1 marking-2 marking-3
263
+ ```
264
+
265
+ ## Common Patterns
266
+
267
+ ### Audit users
268
+ ```bash
269
+ # Export all users
270
+ pltr admin user list --format csv --output all_users.csv
271
+
272
+ # Search for admin users
273
+ pltr admin user search "admin" --format csv --output admins.csv
274
+ ```
275
+
276
+ ### User management workflow
277
+ ```bash
278
+ # Get current user info
279
+ pltr admin user current
280
+
281
+ # Check user permissions
282
+ pltr admin user markings john.doe@company.com
283
+
284
+ # Search for specific users
285
+ pltr admin user search "data scientist"
286
+ ```
287
+
288
+ ### Group management
289
+ ```bash
290
+ # List all groups
291
+ pltr admin group list --format json --output groups.json
292
+
293
+ # Create new team group
294
+ pltr admin group create "Analytics Team" --description "Business analytics team"
295
+
296
+ # Get group details
297
+ pltr admin group get analytics-team
298
+ ```
299
+
300
+ ### Security audit script
301
+ ```bash
302
+ #!/bin/bash
303
+ # Export users and groups for audit
304
+ DATE=$(date +%Y%m%d)
305
+
306
+ pltr admin user list --format json --output "audit_users_${DATE}.json"
307
+ pltr admin group list --format json --output "audit_groups_${DATE}.json"
308
+ pltr admin user search "admin" --format csv --output "potential_admins_${DATE}.csv"
309
+
310
+ echo "Audit files generated for $DATE"
311
+ ```