dtSpark 1.1.0a9__py3-none-any.whl → 1.1.0a10__py3-none-any.whl

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.
dtSpark/_version.txt CHANGED
@@ -1 +1 @@
1
- 1.1.0a9
1
+ 1.1.0a10
dtSpark/tools/builtin.py CHANGED
@@ -1043,8 +1043,9 @@ def _get_document_tools(doc_config: Dict[str, Any]) -> List[Dict[str, Any]]:
1043
1043
  "description": f"Create a Microsoft Word document (.docx) within the allowed path ({allowed_path}). "
1044
1044
  "ONLY use this tool when the user specifically requests a Word/.docx file. "
1045
1045
  "Do NOT use this for HTML, plain text, Markdown, or other text-based formats — use write_file instead. "
1046
- "Supports creating from scratch with structured content, or using a template with placeholder replacement. "
1047
- "When using a template, placeholders in the format {{{{placeholder_name}}}} will be replaced with provided values.",
1046
+ "CRITICAL: You MUST provide 'content' with 'title' and 'paragraphs' to create a document with actual content. "
1047
+ "If you only provide 'path' without 'content', the document will be EMPTY. "
1048
+ "Example: {{\"path\": \"doc.docx\", \"content\": {{\"title\": \"My Title\", \"paragraphs\": [{{\"text\": \"First paragraph\", \"style\": \"Normal\"}}]}}}}",
1048
1049
  "input_schema": {
1049
1050
  "type": "object",
1050
1051
  "properties": {
@@ -1054,29 +1055,31 @@ def _get_document_tools(doc_config: Dict[str, Any]) -> List[Dict[str, Any]]:
1054
1055
  },
1055
1056
  "content": {
1056
1057
  "type": "object",
1057
- "description": "Document content structure",
1058
+ "description": "REQUIRED to create a document with content. Without this, document will be empty.",
1058
1059
  "properties": {
1059
- "title": {"type": "string", "description": "Document title"},
1060
+ "title": {"type": "string", "description": "Document title displayed at top"},
1060
1061
  "paragraphs": {
1061
1062
  "type": "array",
1062
1063
  "items": {
1063
1064
  "type": "object",
1064
1065
  "properties": {
1065
- "text": {"type": "string"},
1066
- "style": {"type": "string", "description": "Style: Normal, Heading 1, Heading 2, Heading 3, Title"}
1067
- }
1066
+ "text": {"type": "string", "description": "The paragraph text"},
1067
+ "style": {"type": "string", "description": "Normal, Heading 1, Heading 2, Heading 3, or Title. Defaults to Normal."}
1068
+ },
1069
+ "required": ["text"]
1068
1070
  },
1069
- "description": "List of paragraphs with optional styles"
1071
+ "description": "Array of paragraphs with 'text' (required) and 'style' (optional)"
1070
1072
  }
1071
- }
1073
+ },
1074
+ "required": ["title", "paragraphs"]
1072
1075
  },
1073
1076
  "template_path": {
1074
1077
  "type": "string",
1075
- "description": "Path to a .docx template file. If provided, placeholders will be replaced."
1078
+ "description": "Alternative to 'content': path to a .docx template file with {{placeholder}} markers"
1076
1079
  },
1077
1080
  "placeholders": {
1078
1081
  "type": "object",
1079
- "description": "Dictionary of placeholder names to values for template replacement",
1082
+ "description": "Only with template_path: dictionary mapping placeholder names to replacement values",
1080
1083
  "additionalProperties": {"type": "string"}
1081
1084
  }
1082
1085
  },
@@ -1088,7 +1091,8 @@ def _get_document_tools(doc_config: Dict[str, Any]) -> List[Dict[str, Any]]:
1088
1091
  "description": f"Create a Microsoft Excel document (.xlsx) within the allowed path ({allowed_path}). "
1089
1092
  "ONLY use this tool when the user specifically requests an Excel/.xlsx spreadsheet. "
1090
1093
  "Do NOT use this for CSV or other text-based tabular formats — use write_file instead. "
1091
- "Creates spreadsheets from structured data. Supports multiple sheets.",
1094
+ "CRITICAL: You MUST provide 'sheets' array with sheet data. "
1095
+ "Example: {{\"path\": \"data.xlsx\", \"sheets\": [{{\"name\": \"Sheet1\", \"headers\": [\"Col1\", \"Col2\"], \"data\": [[\"A\", \"B\"]]}}]}}",
1092
1096
  "input_schema": {
1093
1097
  "type": "object",
1094
1098
  "properties": {
@@ -1122,7 +1126,8 @@ def _get_document_tools(doc_config: Dict[str, Any]) -> List[Dict[str, Any]]:
1122
1126
  "description": f"Create a Microsoft PowerPoint document (.pptx) within the allowed path ({allowed_path}). "
1123
1127
  "ONLY use this tool when the user specifically requests a PowerPoint/.pptx presentation. "
1124
1128
  "Do NOT use this for HTML presentations or other text-based formats — use write_file instead. "
1125
- "Creates presentations with title and content slides. Supports templates with placeholder replacement.",
1129
+ "CRITICAL: You MUST provide 'slides' array with slide content. "
1130
+ "Example: {{\"path\": \"pres.pptx\", \"slides\": [{{\"layout\": \"title\", \"title\": \"My Title\", \"content\": [\"Bullet 1\"]}}]}}",
1126
1131
  "input_schema": {
1127
1132
  "type": "object",
1128
1133
  "properties": {
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: dtSpark
3
- Version: 1.1.0a9
3
+ Version: 1.1.0a10
4
4
  Summary: Secure Personal AI Research Kit - Multi-provider LLM CLI/Web interface with MCP tool integration
5
5
  Home-page: https://github.com/digital-thought/dtSpark
6
6
  Author: Matthew Westwood-Hill
@@ -4,7 +4,7 @@ dtSpark/_full_name.txt,sha256=wsMYXtT12WMrY9gT1JHiKdE4k7H59psECS6cSD07giQ,31
4
4
  dtSpark/_licence.txt,sha256=Mvt5wkOkst8VGlk48vwN3CgHwMHLfmplKSPOUEbTfOw,1071
5
5
  dtSpark/_metadata.yaml,sha256=h3PQd2QsY5yUBzS2b6EueTwkmd57svsbAKcwDVVEfIo,188
6
6
  dtSpark/_name.txt,sha256=kDZC5_a3iMKIPOUvtLXl0C9N5DiOfgUCsecwTUnkJhs,7
7
- dtSpark/_version.txt,sha256=BL95x5tKVY_IYvsQIBZbtkltbDakQ6h9_tBz4n7OFT8,7
7
+ dtSpark/_version.txt,sha256=1fsRT6Hsv69QfbVKQSqRFwJuW8FDwDfpAAMu2LsyLhE,8
8
8
  dtSpark/cli_interface.py,sha256=uNcD8s_h65EJA9xXB_waMfiugwmNYVLdntB2qNn8-Rc,97635
9
9
  dtSpark/conversation_manager.py,sha256=VcfZSwrRuuUbVZa8kQVJjHwG4un5HA0nqYuajsUovoI,132593
10
10
  dtSpark/launch.py,sha256=j8XYpmDswWUIzhpMc32E0Fhbhk_qhOQUAwJSpqh37f0,892
@@ -61,7 +61,7 @@ dtSpark/scheduler/execution_queue.py,sha256=7_yXnGxO-arZTl0qPbyE-kDhZDVXQKT2z9zI
61
61
  dtSpark/scheduler/executor.py,sha256=s_-6WKdTYEK1-xjYJNXGcAj6vdN27Cf6TI9zNYPSsk0,51371
62
62
  dtSpark/scheduler/manager.py,sha256=vwtmQadqf3cv1QzdZJzFqC0l3bBzIplGZ79BUjfsh4o,12846
63
63
  dtSpark/tools/__init__.py,sha256=TPK-c8CmXheEkoiFzL9PMP8ve0hTpw9iIV2xlGLTsMc,147
64
- dtSpark/tools/builtin.py,sha256=NpplsVH0eUVF3b1FevrFe0qVwQJkpfXNghLW4SuNh44,90136
64
+ dtSpark/tools/builtin.py,sha256=3Gx9vBk4eegMOIhi4YJTrzVRqaAn4b9MexnBQYAbiDQ,90880
65
65
  dtSpark/web/__init__.py,sha256=5OrzA2yIR9NBf9mlTPnrQ0afMJTBuEgnzxq4QmIYe54,428
66
66
  dtSpark/web/auth.py,sha256=uSIHwJOiklkjZSpLcznwOL1pVQktKeWifZygt068M9Y,4384
67
67
  dtSpark/web/dependencies.py,sha256=ku54-Vb8wYvGVQ8Kluzxj8zm2Re3wDgU5LzFJ0NVIsI,874
@@ -88,9 +88,9 @@ dtSpark/web/templates/goodbye.html,sha256=ZdEzgP9MD4kMPrLHkg_3wAod2Hfr9hSTRyBq9f
88
88
  dtSpark/web/templates/login.html,sha256=OkLf_uzMYhl_o9ER1RQZc8ch6-bCaiOokEhKbeEl8E8,3274
89
89
  dtSpark/web/templates/main_menu.html,sha256=pEJTq642BZ8LeeI5jyuJEU3mfGmGiHlMuMMq2XrBu78,39207
90
90
  dtSpark/web/templates/new_conversation.html,sha256=wL9ZZbn3M8ktEoX7H5n4r6XKSEImtO2aXnuNKsB-pEw,8047
91
- dtspark-1.1.0a9.dist-info/licenses/LICENSE,sha256=jIuWlmbirwQabTwxfzE7SXT1LpCG-y_GRQ3VnoRTKgo,1101
92
- dtspark-1.1.0a9.dist-info/METADATA,sha256=fHTAEt_e5D4AggJvDhcDKsjqALfpYby7IRgAp7J0uDo,7410
93
- dtspark-1.1.0a9.dist-info/WHEEL,sha256=wUyA8OaulRlbfwMtmQsvNngGrxQHAvkKcvRmdizlJi0,92
94
- dtspark-1.1.0a9.dist-info/entry_points.txt,sha256=IpIwa_a6XY8Z2w7DtgYAhpFHHEbha-zhLkyttWd3zpw,76
95
- dtspark-1.1.0a9.dist-info/top_level.txt,sha256=x-6lMA6vNuxyDNJGNOKI4dyy7L0kOb9V98I5z46bJVY,8
96
- dtspark-1.1.0a9.dist-info/RECORD,,
91
+ dtspark-1.1.0a10.dist-info/licenses/LICENSE,sha256=jIuWlmbirwQabTwxfzE7SXT1LpCG-y_GRQ3VnoRTKgo,1101
92
+ dtspark-1.1.0a10.dist-info/METADATA,sha256=s2V84W0wxKkLAEksFHYfOKxorpG48QCjJiP9f9qNkIs,7411
93
+ dtspark-1.1.0a10.dist-info/WHEEL,sha256=wUyA8OaulRlbfwMtmQsvNngGrxQHAvkKcvRmdizlJi0,92
94
+ dtspark-1.1.0a10.dist-info/entry_points.txt,sha256=IpIwa_a6XY8Z2w7DtgYAhpFHHEbha-zhLkyttWd3zpw,76
95
+ dtspark-1.1.0a10.dist-info/top_level.txt,sha256=x-6lMA6vNuxyDNJGNOKI4dyy7L0kOb9V98I5z46bJVY,8
96
+ dtspark-1.1.0a10.dist-info/RECORD,,