AppView in a box as a Vite plugin thing hatk.dev
2
fork

Configure Feed

Select the types of activity you want to include in your feed.

feat: add getPreferences and putPreference core lexicons

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>

+63
+63
packages/hatk/src/cli.ts
··· 667 667 ) 668 668 669 669 writeFileSync( 670 + join(coreLexDir, 'getPreferences.json'), 671 + JSON.stringify( 672 + { 673 + lexicon: 1, 674 + id: 'dev.hatk.getPreferences', 675 + defs: { 676 + main: { 677 + type: 'query', 678 + description: 'Get all preferences for the authenticated user.', 679 + output: { 680 + encoding: 'application/json', 681 + schema: { 682 + type: 'object', 683 + properties: { 684 + preferences: { type: 'unknown' }, 685 + }, 686 + }, 687 + }, 688 + }, 689 + }, 690 + }, 691 + null, 692 + 2, 693 + ) + '\n', 694 + ) 695 + 696 + writeFileSync( 697 + join(coreLexDir, 'putPreference.json'), 698 + JSON.stringify( 699 + { 700 + lexicon: 1, 701 + id: 'dev.hatk.putPreference', 702 + defs: { 703 + main: { 704 + type: 'procedure', 705 + description: 'Set a single preference by key.', 706 + input: { 707 + encoding: 'application/json', 708 + schema: { 709 + type: 'object', 710 + required: ['key', 'value'], 711 + properties: { 712 + key: { type: 'string' }, 713 + value: { type: 'unknown' }, 714 + }, 715 + }, 716 + }, 717 + output: { 718 + encoding: 'application/json', 719 + schema: { 720 + type: 'object', 721 + properties: {}, 722 + }, 723 + }, 724 + }, 725 + }, 726 + }, 727 + null, 728 + 2, 729 + ) + '\n', 730 + ) 731 + 732 + writeFileSync( 670 733 join(coreLexDir, 'getFeed.json'), 671 734 JSON.stringify( 672 735 {