familiar-vtt 2.5.17 → 2.5.18

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 (3) hide show
  1. package/LICENSE +158 -6
  2. package/README.md +22 -22
  3. package/package.json +1 -1
package/LICENSE CHANGED
@@ -1,8 +1,160 @@
1
- Copyright (c) 2026 Ryan Jansen. All rights reserved.
1
+ PolyForm Shield License 1.0.0
2
2
 
3
- This software and associated documentation files (the "Software") are proprietary
4
- and confidential. Unauthorized copying, distribution, modification, or use of this
5
- Software, via any medium, is strictly prohibited without prior written permission
6
- from the copyright holder.
3
+ Copyright (c) 2026 Ryan Jansen
7
4
 
8
- The Software is provided "as is", without warranty of any kind, express or implied.
5
+ https://polyformproject.org/licenses/shield/1.0.0/
6
+
7
+
8
+ Acceptance
9
+
10
+ In order to get any license under these terms, you must agree to them
11
+ as both strict obligations and conditions to all your licenses.
12
+
13
+
14
+ Copyright License
15
+
16
+ The licensor grants you a copyright license for the software to do
17
+ everything you might do with the software that would otherwise infringe
18
+ the licensor's copyright in it for any permitted purpose. However, you
19
+ may only distribute the software according to Distribution License and
20
+ make changes or new works based on the software according to Changes
21
+ and New Works License.
22
+
23
+
24
+ Distribution License
25
+
26
+ The licensor grants you an additional copyright license to distribute
27
+ copies of the software. Your license to distribute covers distributing
28
+ the software with changes and new works permitted by Changes and New
29
+ Works License.
30
+
31
+
32
+ Notices
33
+
34
+ You must ensure that anyone who gets a copy of any part of the software
35
+ from you also gets a copy of these terms or the URL for them above, as
36
+ well as copies of any plain-text lines beginning with "Required Notice:"
37
+ that the licensor provided with the software.
38
+
39
+
40
+ Changes and New Works License
41
+
42
+ The licensor grants you an additional copyright license to make changes
43
+ and new works based on the software for any permitted purpose.
44
+
45
+
46
+ Patent License
47
+
48
+ The licensor grants you a patent license for the software that covers
49
+ patent claims the licensor can license, or becomes able to license, that
50
+ you would infringe by using the software.
51
+
52
+
53
+ Noncompete
54
+
55
+ Any purpose is a permitted purpose, except for providing any product
56
+ that competes with the software or any product the licensor or any of
57
+ its affiliates provides using the software.
58
+
59
+
60
+ Competition
61
+
62
+ Goods and services compete even when they provide functionality through
63
+ different kinds of interfaces or for different technical platforms.
64
+ Applications can compete with services, libraries with plugins,
65
+ frameworks with development tools, and so on, even if they're written in
66
+ different programming languages or for different computer architectures.
67
+ Goods and services compete even when provided free of charge. If you
68
+ market a product as a practical substitute for the software or another
69
+ product, it definitely competes.
70
+
71
+
72
+ New Products
73
+
74
+ If you are using the software to provide a product that does not compete,
75
+ but the licensor or any of its affiliates brings your product into
76
+ competition by providing a new version of the software or another product
77
+ using the software, you may continue using versions of the software
78
+ available under these terms beforehand to provide your competing product,
79
+ but not any later versions.
80
+
81
+
82
+ Discontinued Products
83
+
84
+ You may begin using the software to compete with a product or service
85
+ that the licensor or any of its affiliates has stopped providing, unless
86
+ the licensor includes a plain-text line beginning with "Licensor Line of
87
+ Business:" with the software that mentions that line of business.
88
+
89
+
90
+ Sales of Business
91
+
92
+ If the licensor or any of its affiliates sells a line of business
93
+ developing the software or using the software to provide a product, the
94
+ buyer can also enforce Noncompete for that product.
95
+
96
+
97
+ Fair Use
98
+
99
+ You may have "fair use" rights for the software under the law. These
100
+ terms do not limit them.
101
+
102
+
103
+ No Other Rights
104
+
105
+ These terms do not allow you to sublicense or transfer any of your
106
+ licenses to anyone else, or prevent the licensor from granting licenses
107
+ to anyone else. These terms do not imply any other licenses.
108
+
109
+
110
+ Patent Defense
111
+
112
+ If you make any written claim that the software infringes or contributes
113
+ to infringement of any patent, your patent license for the software
114
+ granted under these terms ends immediately. If your company makes such a
115
+ claim, your patent license ends immediately for work on behalf of your
116
+ company.
117
+
118
+
119
+ Violations
120
+
121
+ The first time you are notified in writing that you have violated any of
122
+ these terms, or done anything with the software not covered by your
123
+ licenses, your licenses can nonetheless continue if you come into full
124
+ compliance with these terms, and take practical steps to correct past
125
+ violations, within 32 days of receiving notice. Otherwise, all your
126
+ licenses end immediately.
127
+
128
+
129
+ No Liability
130
+
131
+ As far as the law allows, the software comes as is, without any warranty
132
+ or condition, and the licensor will not be liable to you for any damages
133
+ arising out of these terms or the use or nature of the software, under
134
+ any kind of legal claim.
135
+
136
+
137
+ Definitions
138
+
139
+ The "licensor" is the individual or entity offering these terms, and the
140
+ "software" is the software the licensor makes available under these terms.
141
+
142
+ A "product" can be a good or service, or a combination of them.
143
+
144
+ "You" refers to the individual or entity agreeing to these terms.
145
+
146
+ "Your company" is any legal entity, sole proprietorship, or other kind
147
+ of organization that you work for, plus all its affiliates.
148
+
149
+ "Affiliates" means the other organizations than an organization has
150
+ control over, is under the control of, or is under common control with.
151
+
152
+ "Control" means ownership of substantially all the assets of an entity,
153
+ or the power to direct its management and policies by vote, contract, or
154
+ otherwise. Control can be direct or indirect.
155
+
156
+ "Your licenses" are all the licenses granted to you for the software
157
+ under these terms.
158
+
159
+ "Use" means anything you do with the software requiring one of your
160
+ licenses.
package/README.md CHANGED
@@ -6,11 +6,11 @@
6
6
 
7
7
  **176 tools. 28 AI providers. Zero prep.**
8
8
 
9
- Give your favorite AI full control of your virtual tabletop characters, combat, scenes, music, lighting, images, voices, and everything in between.
9
+ Give your favorite AI full control of your virtual tabletop - characters, combat, scenes, music, lighting, images, voices, and everything in between.
10
10
 
11
11
  [![Foundry v13+](https://img.shields.io/badge/Foundry-v13%2B-orange?logo=data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCA1MTIgNTEyIj48cGF0aCBmaWxsPSIjZmZmIiBkPSJNMjU2IDhDMTE5LjA0MyA4IDggMTE5LjA4MyA4IDI1NmMwIDEzNi45OTcgMTExLjA0MyAyNDggMjQ4IDI0OHMyNDgtMTExLjAwMyAyNDgtMjQ4QzUwNCAxMTkuMDgzIDM5Mi45NTcgOCAyNTYgOHoiLz48L3N2Zz4=)](https://foundryvtt.com)
12
12
  [![npm](https://img.shields.io/npm/v/familiar-vtt?color=blue&label=npm)](https://www.npmjs.com/package/familiar-vtt)
13
- [![License](https://img.shields.io/badge/license-proprietary-lightgrey)](#license)
13
+ [![License](https://img.shields.io/badge/license-PolyForm%20Shield-lightgrey)](#license)
14
14
 
15
15
  [Installation](#installation) | [Quick Start](#quick-start) | [Features](#features) | [Connect Your AI](#connect-your-ai) | [FAQ](#faq)
16
16
 
@@ -20,9 +20,9 @@ Give your favorite AI full control of your virtual tabletop — characters, comb
20
20
 
21
21
  I'm Ryan. Dad of two young kids, married to my favorite person, and perpetually short on free time.
22
22
 
23
- My wife and I play D&D together just the two of us, 1-on-1 campaigns. It's our thing. But solo DMing is a lot. You're the storyteller, every NPC, the rules engine, the sound guy, and the atmosphere all at once. I'd be mid-monologue as a mysterious stranger and then have to break character to roll initiative, look up a spell range, adjust the lighting, and find that one tavern ambience track I swore I bookmarked. By the time I got back to the scene, the moment was gone.
23
+ My wife and I play D&D together - just the two of us, 1-on-1 campaigns. It's our thing. But solo DMing is a lot. You're the storyteller, every NPC, the rules engine, the sound guy, and the atmosphere all at once. I'd be mid-monologue as a mysterious stranger and then have to break character to roll initiative, look up a spell range, adjust the lighting, and find that one tavern ambience track I swore I bookmarked. By the time I got back to the scene, the moment was gone.
24
24
 
25
- I wanted something that could handle the mechanical side of the table so I could stay in the story. Not a replacement DM a co-pilot. Something I could say "roll initiative for the goblins, dim the torches, and start combat music" to, and it would just... do it. While I kept talking.
25
+ I wanted something that could handle the mechanical side of the table so I could stay in the story. Not a replacement DM - a co-pilot. Something I could say "roll initiative for the goblins, dim the torches, and start combat music" to, and it would just... do it. While I kept talking.
26
26
 
27
27
  So I started building. First it was a handful of tools to move tokens and roll dice. Then I added combat tracking. Then scene management. Then I thought "what if it could also generate NPC portraits on the fly?" and "what if it could voice the tavern keeper?" and that's basically how you end up with 176 tools across 24 domains and 28 AI providers.
28
28
 
@@ -38,7 +38,7 @@ Ask your AI to do things that would normally take you minutes of clicking throug
38
38
 
39
39
  > "What spells does Elara have prepared? Does she have enough slots to cast Fireball?"
40
40
 
41
- > "Dim the lights, start rain and thunder, and have the innkeeper whisper a warning about the road ahead in his voice."
41
+ > "Dim the lights, start rain and thunder, and have the innkeeper whisper a warning about the road ahead - in his voice."
42
42
 
43
43
  > "We're done for tonight. Summarize what happened this session and save it."
44
44
 
@@ -52,7 +52,7 @@ Familiar exposes **176 tools across 24 domains** through the Model Context Proto
52
52
 
53
53
  **Combat & AI**
54
54
 
55
- Run full encounters hands-free. Roll initiative, resolve attacks, apply damage, track conditions or let the AI play NPCs with tactical decision-making.
55
+ Run full encounters hands-free. Roll initiative, resolve attacks, apply damage, track conditions - or let the AI play NPCs with tactical decision-making.
56
56
 
57
57
  </td>
58
58
  <td width="33%" valign="top">
@@ -66,7 +66,7 @@ Give every NPC a unique AI-generated voice. Generate scene illustrations and cha
66
66
 
67
67
  **Scenes & Canvas**
68
68
 
69
- Build maps on the fly. Place tokens, draw walls, set lighting and weather, configure regions control the entire canvas through natural language.
69
+ Build maps on the fly. Place tokens, draw walls, set lighting and weather, configure regions - control the entire canvas through natural language.
70
70
 
71
71
  </td>
72
72
  </tr>
@@ -110,7 +110,7 @@ Create, update, and inspect actors, inventory, spells, features, and active effe
110
110
  | **Rollable Tables** | 7 | Create tables and roll on them for random encounters or loot |
111
111
  | **Macros** | 7 | Create, edit, and execute Foundry macros |
112
112
  | **World & System** | 6 | World info, system settings, time, pause, and user management |
113
- | **Combat AI** | 6 | NPC tactical decisions target selection, ability usage, positioning |
113
+ | **Combat AI** | 6 | NPC tactical decisions - target selection, ability usage, positioning |
114
114
  | **Items** | 6 | Create, update, delete, and search world-level items |
115
115
  | **Active Effects** | 5 | Apply, remove, and toggle buffs, debuffs, and status effects |
116
116
  | **Folders** | 5 | Organize documents into folder hierarchies |
@@ -126,7 +126,7 @@ Create, update, and inspect actors, inventory, spells, features, and active effe
126
126
 
127
127
  ## Connect your AI
128
128
 
129
- There are three ways to connect an AI to your game. They all give the AI the same 176 tools the difference is where the AI runs.
129
+ There are three ways to connect an AI to your game. They all give the AI the same 176 tools - the difference is where the AI runs.
130
130
 
131
131
  ### Option 1: Built-in chat (easiest)
132
132
 
@@ -143,7 +143,7 @@ Familiar connects directly to **28 AI providers** across four categories:
143
143
 
144
144
  This is the right choice if you want the simplest setup, or if you want voice, images, and transcription alongside chat. It is also the only option that supports local models (Ollama, LM Studio) for fully offline play.
145
145
 
146
- ### Option 2: MCP use your existing AI subscription
146
+ ### Option 2: MCP - use your existing AI subscription
147
147
 
148
148
  Already paying for Claude, ChatGPT, or Gemini? You can connect them directly to Familiar through the [Model Context Protocol](https://modelcontextprotocol.io). Your subscription becomes a DM assistant at no extra cost.
149
149
 
@@ -163,11 +163,11 @@ npx familiar-vtt
163
163
  | Windsurf | stdio | Add to MCP config |
164
164
  | VS Code (Copilot) | stdio | Add to `.vscode/mcp.json` |
165
165
 
166
- You do not need to configure each client by hand. The module includes a step-by-step **MCP Setup Wizard** (in Module Settings > Familiar) that generates the exact config block for your chosen client just copy and paste.
166
+ You do not need to configure each client by hand. The module includes a step-by-step **MCP Setup Wizard** (in Module Settings > Familiar) that generates the exact config block for your chosen client - just copy and paste.
167
167
 
168
168
  ### Option 3: MCP subscription providers
169
169
 
170
- This is a hybrid of the first two. ChatGPT and Mistral's Le Chat can connect as subscription-based providers inside the built-in chat UI. They bring their own models you authenticate with your existing account, and Familiar handles the rest through MCP.
170
+ This is a hybrid of the first two. ChatGPT and Mistral's Le Chat can connect as subscription-based providers inside the built-in chat UI. They bring their own models - you authenticate with your existing account, and Familiar handles the rest through MCP.
171
171
 
172
172
  You get the convenience of the built-in chat window with the cost advantage of your existing subscription.
173
173
 
@@ -211,12 +211,12 @@ Or install it globally:
211
211
  npm install -g familiar-vtt
212
212
  ```
213
213
 
214
- The **Setup Wizard** in Module Settings > Familiar walks you through connecting your MCP client step by step config snippets, WebSocket port, the works.
214
+ The **Setup Wizard** in Module Settings > Familiar walks you through connecting your MCP client step by step - config snippets, WebSocket port, the works.
215
215
 
216
216
  ## Quick Start
217
217
 
218
218
  1. Open **Module Settings > Familiar**
219
- 2. Pick a chat provider [OpenAI](https://platform.openai.com/api-keys), [Anthropic](https://console.anthropic.com/), or run local models free with [Ollama](https://ollama.com)
219
+ 2. Pick a chat provider - [OpenAI](https://platform.openai.com/api-keys), [Anthropic](https://console.anthropic.com/), or run local models free with [Ollama](https://ollama.com)
220
220
  3. Paste your API key
221
221
  4. Open the Familiar chat panel from the sidebar
222
222
  5. Start playing
@@ -228,14 +228,14 @@ That's it. No server to run, no terminal, no config files. The built-in chat wor
228
228
  | | Supported |
229
229
  |---|---|
230
230
  | **Foundry VTT** | v13, v14 |
231
- | **Game System** | D&D 5e (2024 rules) full support. Other systems work for general features (chat, journals, scenes, audio) but lack system-specific tools like character sheets and combat automation. |
231
+ | **Game System** | D&D 5e (2024 rules) - full support. Other systems work for general features (chat, journals, scenes, audio) but lack system-specific tools like character sheets and combat automation. |
232
232
 
233
233
  ## FAQ
234
234
 
235
235
  <details>
236
236
  <summary><b>Is Familiar free?</b></summary>
237
237
 
238
- The core module is free and includes all 176 tools, 28 providers, built-in chat, and full MCP support. There is a Pro tier with premium features like session persistence, auto-summarization, campaign memory, knowledge base RAG, and voice transcription pricing is handled through Polar.sh.
238
+ The core module is free and includes all 176 tools, 28 providers, built-in chat, and full MCP support. There is a Pro tier with premium features like session persistence, auto-summarization, campaign memory, knowledge base RAG, and voice transcription - pricing is handled through Polar.sh.
239
239
 
240
240
  </details>
241
241
 
@@ -249,14 +249,14 @@ No. There is no telemetry, no analytics, and no data collection of any kind. Fam
249
249
  <details>
250
250
  <summary><b>Can the AI break my world?</b></summary>
251
251
 
252
- Familiar sanitizes all document updates so the AI cannot change ownership, permissions, or internal IDs. Prototype pollution protection is built in, destructive operations require confirmation, and WebSocket connections use shared-secret authentication. That said, always keep backups of your world that is good practice regardless.
252
+ Familiar sanitizes all document updates so the AI cannot change ownership, permissions, or internal IDs. Prototype pollution protection is built in, destructive operations require confirmation, and WebSocket connections use shared-secret authentication. That said, always keep backups of your world - that is good practice regardless.
253
253
 
254
254
  </details>
255
255
 
256
256
  <details>
257
257
  <summary><b>What is the difference between MCP mode and built-in chat?</b></summary>
258
258
 
259
- Built-in chat runs directly inside Foundry with no server required it makes API calls straight to your AI provider and is the fastest way to get started. MCP mode connects Familiar to external clients like Claude Desktop, ChatGPT, or Gemini through a local server, which lets you use your existing subscriptions and is more powerful for complex multi-step tasks. Both modes have access to the same 176 tools.
259
+ Built-in chat runs directly inside Foundry with no server required - it makes API calls straight to your AI provider and is the fastest way to get started. MCP mode connects Familiar to external clients like Claude Desktop, ChatGPT, or Gemini through a local server, which lets you use your existing subscriptions and is more powerful for complex multi-step tasks. Both modes have access to the same 176 tools.
260
260
 
261
261
  </details>
262
262
 
@@ -270,7 +270,7 @@ For the best experience: Claude Sonnet 4.6 or Opus 4.6, GPT-4.1, or Gemini 2.5 P
270
270
  <details>
271
271
  <summary><b>Can I use this for solo play?</b></summary>
272
272
 
273
- Absolutely solo and small-group play is one of the main use cases. I built Familiar for 1-on-1 D&D campaigns with my wife. The AI can run NPCs, manage encounters, describe scenes, and help with rulings so you can play without a dedicated DM.
273
+ Absolutely - solo and small-group play is one of the main use cases. I built Familiar for 1-on-1 D&D campaigns with my wife. The AI can run NPCs, manage encounters, describe scenes, and help with rulings so you can play without a dedicated DM.
274
274
 
275
275
  </details>
276
276
 
@@ -290,10 +290,10 @@ No. Familiar operates through its own namespaced flags and does not monkey-patch
290
290
 
291
291
  ## Roadmap
292
292
 
293
- These are things I'm actively working toward. No promises on timelines this is a nights-and-weekends project.
293
+ These are things I'm actively working toward. No promises on timelines - this is a nights-and-weekends project.
294
294
 
295
295
  - Module integrations (Midi-QOL, Sequencer, Token Magic FX, JB2A) for automated rolls, visual effects, and animations
296
- - AI Campaign Setup import a published adventure and let the AI help you prep sessions
296
+ - AI Campaign Setup - import a published adventure and let the AI help you prep sessions
297
297
  - Pathfinder 2e support
298
298
  - More game systems beyond D&D 5e
299
299
 
@@ -306,7 +306,7 @@ Familiar's source code is private, but your input matters. If you run into bugs,
306
306
 
307
307
  ## License
308
308
 
309
- Familiar is proprietary software. See [LICENSE](LICENSE) for details.
309
+ Familiar is licensed under the [PolyForm Shield License 1.0.0](https://polyformproject.org/licenses/shield/1.0.0/). You can use, read, and modify the software freely, but you may not use it to build a competing product. See [LICENSE](LICENSE) for the full text.
310
310
 
311
311
  <div align="center">
312
312
 
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "familiar-vtt",
3
- "version": "2.5.17",
3
+ "version": "2.5.18",
4
4
  "description": "Your AI familiar for Foundry VTT. 176 tools across 24 domains — characters, scenes, combat, canvas, audio, macros, and more.",
5
5
  "type": "module",
6
6
  "engines": {