It’s worth noting that query results are automatically deduplicated based on the attributes you select. So indeed, the query tag select name would give you a unique list of tag names. If you’d like to select only tags applied to pages, you can also use something like tag where parent = "page" select name
Not sure if it applies to you but I also added a “Filter” for my page that is listing my tags:
Add an attribute to the page called queryString [queryString: ""]
Modify the query to be similar to:
{{#if queryString =~ /^\s?$/ }}
{{#each {tag select name order by name}}}
- #{{name}}
{{/each}}
{{else}}
{{#each {tag where name =~ @page.queryString select name order by name}}}
- #{{name}}
{{/each}}
{{/if}}